【发布时间】:2011-08-03 12:01:14
【问题描述】:
我有一个函数可以返回五个混合大小写的字符。如果我对此字符串进行查询,无论大小写,它都会返回该值。
如何使 MySQL 字符串查询区分大小写?
【问题讨论】:
-
注意 BINARY 与区分大小写的比较不同: select 'à' like 'a' // 返回 true select 'à' like BINARY 'a' // 返回 false !!! select 'à' like 'a' COLLATE latin1_general_cs // 返回 true 所以使用 BINARY 进行区分大小写比较的建议是不正确的。
-
@cquezel:所以,你是说 [select 'à' like BINARY 'a'] 应该返回 true?无论如何,这与区分大小写的比较有什么关系?
-
@FranciscoZarabozo 下面有人建议使用 BINARY 比较来进行区分大小写的比较。我只是指出,在其他语言中,这可能无法按预期工作,因为 BINARY 与区分大小写不同。
-
@cquezel 我认为“à”与“a”是不同的字母。所以无论如何,两者之间的比较确实应该是错误的。
标签: mysql sql interop case-sensitive string-comparison