SELECT id, info->>'$.name' AS name,
JSON_EXTRACT(info, '$.address.city') AS city
FROM users
WHERE JSON_CONTAINS(info->'$.tags', '"vip"');
如果要为这个查询优化索引,最佳方案是:
在info列上创建普通B-Tree索引
使用ALTER TABLE users ADD INDEX idx_tags ((CAST(info->'$.tags' AS CHAR(100) ARRAY)))创建多值索引
在info列上创建全文索引
JSON列无法创建任何索引,只能全表扫描

这道题你会答吗?花几分钟告诉大家答案吧!