如何使用LIKE通配符在列中搜索(不区分大小写)?
我环顾四周,却找不到我想要的东西,所以去了。
SELECT * FROM trees WHERE trees.`title` LIKE '%elm%'
这很好用,但是如果树被命名为Elm或ELM等则不行。
如何使此通配符搜索的SQL大小写不敏感?
我正在使用MySQL 5和Apache。
回答:
SELECT *FROM trees
WHERE trees.`title` COLLATE UTF8_GENERAL_CI LIKE '%elm%'
实际上,如果添加COLLATE UTF8_GENERAL_CI
到列的定义中,则可以忽略所有这些技巧:它将自动运行。
ALTER TABLE trees MODIFY COLUMN title VARCHAR(…) CHARACTER
SET UTF8 COLLATE UTF8_GENERAL_CI.
这还将重建该列上的所有索引,以便它们可用于查询而无需前导’%’
以上是 如何使用LIKE通配符在列中搜索(不区分大小写)? 的全部内容, 来源链接: utcz.com/qa/415235.html