在MySQL LIKE查询中使用case

时间:2014-11-17 13:05:02

标签: mysql case sql-like

如果我的表格中包含一个名为TITLE的列,其中包含混合大小写的文本,例如

Vinashin to Receive Government Loans to Pay WorkersGerman government concerned over rise in inflation

是否可以执行SQL LIKE查询,例如:

SELECT * FROM MYTABLE WHERE TITLE LIKE '%Government%'

但哪只会返回第一行而不是第二行?

MYSQL的LIKE似乎忽略了案例。

2 个答案:

答案 0 :(得分:1)

您可以使用:

LIKE BINARY 

而不是LIKE,它将匹配区分大小写。

答案 1 :(得分:1)

来自the documentation

  

以下两个语句说明字符串比较不区分大小写,除非其中一个操作数是二进制字符串:

mysql> SELECT 'abc' LIKE 'ABC';
        -> 1
mysql> SELECT 'abc' LIKE BINARY 'ABC';
        -> 0

因此,您可以使用LIKE BINARY '%Government%'进行区分大小写的比较。