MysqlMysql Json类型或Text类型可以建索引吗?

Posted N!CE波

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MysqlMysql Json类型或Text类型可以建索引吗?相关的知识,希望对你有一定的参考价值。

一、JSON类型

答案是不可以

为Json类型建索引会报错

mysql> CREATE INDEX idx1 ON user (card_pay_data(10));
ERROR 3152 (42000): JSON column card_pay_data cannot be used in key specification.

 

二、text类型

答案是可以的,但是需要指定长度

mysql> CREATE INDEX idx2 ON user (tests);
ERROR 1170 (42000): BLOB/TEXT column tests used in key specification without a key length
mysql> CREATE INDEX idx2 ON user (tests(10));
Query OK, 0 rows affected (0.03 sec)
Records: 0  Duplicates: 0  Warnings: 0

 

以上是关于MysqlMysql Json类型或Text类型可以建索引吗?的主要内容,如果未能解决你的问题,请参考以下文章

MySQLMySQL 8 的 JSON 新特性详解JSON 数据类型

如何使用 System.Text.Json 处理可为空的引用类型?

MySQLMySQL 8 的 JSON 新特性详解JSON 函数

没有 MediaTypeFormatter 可用于从媒体类型为“text/plain”的内容中读取“产品”类型的对象

MySQLMySQL知识总结

SpringBoot入门教程:MySQL8新特性(JSON数据类型)