JSON 的 MySql 索引

标签 mysql json indexing full-text-search

我有这个 SQL 查询:

SELECT  players.*,
        CAST(
            SUBSTRING_INDEX(
                SUBSTRING_INDEX(achievements, '"globalID":23000062', 1),
                '"value":',
                -1
            )
        AS UNSIGNED) AS json_extracted_value
FROM    players
WHERE   INSTR(achievements, '"globalID":23000062') > 0

成就栏的最合理索引是什么?它是普通索引还是全文索引?现在查询大约需要 1 分钟才能完成。我希望它能在几秒钟内完成。

还有我可以使用的另一个更简单的查询吗?如果不是,那么什么指数最好?

谢谢!

最佳答案

升级...

MySQL 5.7 可以索引 JSON 列字段。

MariaDB 10 的“动态列”具有类似的功能。

关于JSON 的 MySql 索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33582899/

相关文章:

json - 具有多个匹配项的 JMESPath JSON 过滤器

Python - 如何流式传输大 (11 gb) JSON 文件以进行分解

python - 使用一维数组的 Numpy 高级索引

c++ - 我将如何创建一个可以具有非零下限的 Array 类(在 C++ 中)?

php - mysqli 函数不插入值

mysql - 如何使用 MySQL 和 NodeJS 获取一行?

java - 如何在java中获取httpResponse的一部分

sql - 分组并选择表中的最后一个插入

java - 如何正确处理连接空闲超时错误

mysql - 如果MySQL的InnoDB PRIMARY列自动建立索引,为什么索引长度报告为零?