使用带有UPPER()语法的SQL LIKE运算符

时间:2014-04-21 23:12:18

标签: mysql sql database

我正在尝试在查询中使用LIKE运算符,如下所示:

mysql> select cat_title from category where cat_title like '%Indian%Restaurant%';
+--------------------+
| cat_title          |
+--------------------+
| Indian_Restaurants |
+--------------------+
1 row in set (2.59 sec)

但是,由于我想进行不区分大小写的搜索,我正在尝试:

mysql> select cat_title from category where UPPER(cat_title) like UPPER('%Indian%Restaurant%');
Empty set (2.83 sec)

为什么第二个查询不起作用?

1 个答案:

答案 0 :(得分:1)

cat_title列上的排序规则很可能不区分大小写。使用

... cat_title LIKE '%Indian%Restaurant%' COLLATE utf8_bin

另见