Sql like模糊查询 区分大小写

2022-09-06 10:26:36

Sql模糊查询,Like默认是不区分大小写的

使用Like时,怎么支持大小写呢?

upper、lower,只能模糊所有的内容,不能区分内容中的大小写。

sqlite数据库对text字段默认是大小写敏感的,但是唯独在模糊查询时不起作用。

解决方法是:查询前先执行PRAGMA case_sensitive_like = 1;然后再执行数据库查询语句。

PRAGMA case_sensitive_like的值,可以是1/0,也可以设置为ON/OFF。

开启后,会对数据库有变更修改。

值得注意的是,开启了大小写敏感后,查询数据需要添加Limit参数

直接查询,无结果:

select*from HanziListWHERE Pinyinlike'Q%'

 从查询日志中,我们可以看到,其实默认查询的数据量为0:

添加Limit参数:

Limit这里0,3,表示查询的数据中取前3条数据。

也可以直接使用数字3

参考:

Case sensitive and insensitive like in SQLite

  • 作者:Jeremy_Yoyo
  • 原文链接:https://blog.csdn.net/qq_35382207/article/details/110517068
    更新时间:2022-09-06 10:26:36