3

我正在尝试请求一个区分大小写的结果。

例如在我的数据库中,我有

ABCdef
abcDEF
abcdef

请求是

SELECT * FROM table WHERE col = 'abcdef'

但我有我的 3 行结果,我只想要 abcdef

我试图找到一个解决方案

SELECT * 
FROM table 
WHERE col COLLATE Latin1_General_CS_AS = 'abcdef' COLLATE Latin1_General_CS_AS 

但我有这个错误:

未知排序规则:'Latin1_General_CS_AS'{"success":false,"error":"#1273 - 未知排序规则:'Latin1_General_CS_AS'"}

谢谢

4

3 回答 3

4

感谢您的帮助,我找到了解决方案,它不是 latin1 ut utf8

COLLATE utf8_bin
于 2013-04-28T13:37:19.063 回答
1

Latin1_General_CS_AS是 SQL Server 排序规则。

对于 MySQL,请尝试latin1_general_cs

WHERE col = 'abcdef' COLLATE latin1_general_cs 
于 2013-04-28T13:11:44.867 回答
0

区分大小写的字符串 SQL 区分上下 SQL server 2008 R2 或更高版本,您可以转换二进制:

  1. 第一步转换二进制
  2. 最后一步比较两个字符串二进制

经验:

 SELECT * FROM dbo.staffl WHERE CAST(unitcode AS BINARY(50)) = CAST ('pcs' AS BINARY(50))
于 2021-11-08T04:16:21.030 回答