Sql模糊查詢,Like默認是不區分大小寫的
使用Like時,怎么支持大小寫呢?
upper、lower,只能模糊所有的內容,不能區分內容中的大小寫。
sqlite數據庫對text字段默認是大小寫敏感的,但是唯獨在模糊查詢時不起作用。
解決方法是:查詢前先執行PRAGMA case_sensitive_like = 1;然后再執行數據庫查詢語句。
PRAGMA case_sensitive_like的值,可以是1/0,也可以設置為ON/OFF。
開啟后,會對數據庫有變更修改。
值得注意的是,開啟了大小寫敏感后,查詢數據需要添加Limit參數
直接查詢,無結果:
select * from HanziList WHERE Pinyin like 'Q%'
從查詢日志中,我們可以看到,其實默認查詢的數據量為0:
添加Limit參數:
Limit這里0,3,表示查詢的數據中取前3條數據。
也可以直接使用數字3
參考: