【发布时间】:2020-04-18 12:36:46
【问题描述】:
我试图弄清楚如何搜索表的 JSON 数组列。我找到了this Stackoverflow question,但我不清楚 JSON_SEARCH 是如何工作的。
在答案中,人们似乎给 JSON_SEARCH 直接数据以供搜索:
SELECT JSON_SEARCH('["1","2","3","4","5"]', 'one', "2")
但由于我正在搜索,我实际上并没有数组 ["1","2","3","4","5"]
我正在创建这样的搜索查询:
SELECT * FROM `server_list`
WHERE
`server_version` LIKE '%%'
AND
`server_name` LIKE '%%'
AND
`server_slots` > 1500
AND
`server_slots` < 4000
如何在同一个查询中搜索特定标签?顺带一提:
AND
JSON_SEARCH(`server_tags`, ['1', '2', '3'])
server_tags 是我要搜索的列,['1', '2', '3'] 是我要搜索的多个标签。
编辑: 我刚刚意识到 JSON 列只是字符串,这让我可以这样做:
SELECT * FROM `lista_server`
`server_tags` LIKE '%value%'
OR `server_tags` LIKE '%value2%'
这个方法有什么问题吗?
【问题讨论】: