首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在json中sqlite排序无大小写搜索

问在json中sqlite排序无大小写搜索
EN

Stack Overflow用户
提问于 2020-06-08 17:10:14
回答 1查看 43关注 0票数 0

我对country表有一个查询。它有一个json类型的"data“。

代码语言:javascript
复制
select country.countryNo,country.population 
from country 
where json_extract(country.data,'$."stateCount"')="23" COLLATE NOCASE ;

这不能给出json inside模型中的Statecount而不是stateCount的结果

我是不是用错了COLLATE NOCASE?

EN

回答 1

Stack Overflow用户

发布于 2020-06-08 17:15:53

您误解了COLLATE NOCASE的用途。它实际上适用于前面的比较运算符(这里是'=')。因此,在您的查询中,它将json_extract()的返回值与'23'的返回值进行不区分大小写的比较-您会同意,这不会有什么不同。

另一方面,json密钥本质上是区分大小写的。如果您想搜索具有不同大小写的json key,那么您确实需要枚举它们:

代码语言:javascript
复制
 where 
    json_extract(country.data,'$.stateCount') = 23
    or json_extract(country.data,'$.StateCount') = 23

附注:如果给定key下的json值数据是数值,json_extract()会给出一个数值,您可以直接与数字进行比较。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62258653

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档