首页 > 解决方案 > 如何使 Json_Search 不区分大小写?

问题描述

我想使用 MySQL 中的 json_search 函数来查询数据。但是find搜索是区分大小写的。

例如:

SET @j = '[{"x":"Abc"}, {"y":"bcd"}]';
SELECT JSON_SEARCH(@j, 'one', 'ABC'); 

此选择将返回null。但我需要它返回"x":"Abc " 给我。

有什么办法可以使搜索不区分大小写吗?所以我可以得到结果 $[0].x

标签: mysql

解决方案


诀窍是在搜索之前将 JSON 设为小写:

SELECT JSON_SEARCH(LOWER(@j), 'one', LOWER('ABC')); 

有关变体,请参见dbfiddle.uk


推荐阅读