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)
MySQL用于进行比较的默认排序规则不区分大小写.您需要指定区分大小写的排序规则或二进制文件.您可以在创建列时或在查询中执行此操作.
例如:
SELECT UserID FROM sys_users WHERE UserID='NREW' COLLATE latin1_bin
Run Code Online (Sandbox Code Playgroud)
正确的整理取决于您的字符集.对于latin1,默认情况下,您可以使用latin1_bin.对utf8,utf8_bin.
你可以使用关键字Binary,
SELECT UserID FROM sys_users WHERE BINARY UserID='nrew'
Run Code Online (Sandbox Code Playgroud)
请参考这里
| 归档时间: |
|
| 查看次数: |
16786 次 |
| 最近记录: |