如何使用“glob”运算符作为不区分大小写

时间:2014-01-09 06:05:20

标签: sqlite

我正在使用 glob运算符和“?” wildcharater。问题是 - 区分大小写

假设我想搜索“Hola”,那么下面的查询就不起作用了。

select * from tableName where columnName glob 'ho?a';

我可以将LOWER或UPPER关键字与columnName一起使用,但是对于大写字母组合的文本也是如此。

请提供您的意见。

2 个答案:

答案 0 :(得分:3)

GLOB因设计而区分大小写。

如果您想要不区分大小写的匹配,请使用LIKE_匹配单个字符:

select * from tableName where columnName like 'ho_a';

答案 1 :(得分:3)

GLOB支持角色类:

SELECT * FROM tableName WHERE columnName GLOB '[hH][oO]?[aA]';

但是,使用LIKE会更容易,除非你真的需要在模式的其他部分使用字符类。