02.26 sqlite查詢如何忽略大小寫、空格、全半角

有時表中的某個字段的值有空格、有大寫小寫的,還有全角半角的,這些數據格式是固定,不可更改。這是如果只輸入小寫或全角就會搜不到半角的。兩種方案可供選擇。

sqlite查詢如何忽略大小寫、空格、全半角

query

第一種,可以新建字段去掉查找字段的空格、統一轉大寫或小寫,統一轉全角或半角插入表中,查找比較方便,但是會增加表的大小。

第二種,改變sql語句查找,如下:

1、忽略空格

SELECT * FROM 表名 WHERE REPLACE(你的字段名,' ','') like '%input%'

2、忽略全半角

全角--指一個字符佔用兩個標準字符位置。

半角--指一字符佔用一個標準的字符位置。

將input轉全角或半角後再查一次

SELECT * FROM 表名 WHERE REPLACE(你的字段名,' ','') like '%input%' or WHERE REPLACE(你的字段名,' ','') like '%ToSBC(input)%'

3、忽略大小寫

SELECT * FROM 表名 WHERE REPLACE(你的字段名 ,' ','') = '15jgx' COLLATE NOCASE,sqlite支持查詢ASCLL字符忽略大小寫,但是不支持查詢寬字符忽略大小寫


分享到:


相關文章: