如何在mysql中搜索确切的字符串

Wer*_*eta 12 mysql collation case-sensitive

我正在尝试在mysql中搜索字符串的完全匹配.字符串是'nrew'.但是当我进行下面的查询时,我仍然会得到一个结果:

SELECT UserID FROM sys_users WHERE UserID='NREW'
SELECT UserID FROM sys_users WHERE UserID='NrEw'
Run Code Online (Sandbox Code Playgroud)

请帮忙.

Can*_*ide 25

SELECT UserID FROM sys_users WHERE BINARY UserID='NREW'
Run Code Online (Sandbox Code Playgroud)


Mic*_*ior 9

MySQL用于进行比较的默认排序规则不区分大小写.您需要指定区分大小写的排序规则或二进制文件.您可以在创建列时或在查询中执行此操作.

例如:

SELECT UserID FROM sys_users WHERE UserID='NREW' COLLATE latin1_bin
Run Code Online (Sandbox Code Playgroud)

正确的整理取决于您的字符集.对于latin1,默认情况下,您可以使用latin1_bin.对utf8,utf8_bin.


Dan*_*Liu 5

你可以使用关键字Binary,

SELECT UserID FROM sys_users WHERE BINARY UserID='nrew'
Run Code Online (Sandbox Code Playgroud)

请参考这里