有谁用过MySQL的Json索引吗
Schema::create('user_profiles', function (Blueprint $table) {
$table->id();
$table->integer('user_id')->index();
$table->string('gender')->index();
$table->string('year')->index();
$table->string('educational')->string();
$table->string('work')->nullable();
$table->string('income')->nullable();
$table->string('height')->index();
$table->json('area'); // ['11', '1101', '']
$table->timestamps();
});
类似这样的area字段,保存的是一个json数组
我要怎么给里面的第一个列创建一个索引
我直接$table->json(‘area’)->index()会报错
另外,我要怎么进行Mode查询
先给area数组第一列创建虚拟列,然后在虚拟列上创建索引,这是一个很麻烦的行为,管理维护也很麻烦,MySQL对文档的支持是一坨屎。
顺便说一句,MySQL的查询优化器也是一坨屎。
mysql json用来查询不方便。尤其是你的json是数组时[1,2,3]这种。还不支持模糊,必须手动的拼接sql
你这种情况想加索引,可以上mongodb
如果 MySQL 版本 => 8.0.17,参考多值索引
为什么不把json字段中要加索引的冗余出来呢
看了各位的评论,总的来说可以,但是很麻烦,不如不用,哈哈