表中有orders
字段是JSON类型,存储这类似 [1, 2, 3]
这样的id数组
给定一个数组搜索条件[1, 2]
怎么查出包含数组条件任意一项值的记录?
SELECT * FROM trade WHERE orders LIKE "%1%" OR orders LIKE "%2%";
像上面这个语句一样,但这是通过字符串搜的,效率也非常低下,想请问是否有效率高点的,JSON查询的方式?
###JSON_CONTAINS 的第二个参数必须是字符串。
SELECT * FROM `trade` where JSON_CONTAINS(orders, '1','$')
###这样存储后查询效率好低的