我环顾四周,却找不到我想要的东西,所以去了。
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到列的定义中,则可以忽略所有这些技巧:它将自动运行。
COLLATE UTF8_GENERAL_CI
ALTER TABLE trees MODIFY COLUMN title VARCHAR(…) CHARACTER SET UTF8 COLLATE UTF8_GENERAL_CI.
这还将重建该列上的所有索引,以便它们可用于查询而无需前导’%’