在SQL Server数据库字段中找到大写字符

Ant*_*nyJ 5 sql-server

我需要在数据库表中找到具有大写值字段的行.

E.g.: select * from Cust where Surname like 'COnTAiNS UpPERcASE VaLUeS'
Run Code Online (Sandbox Code Playgroud)

任何援助将不胜感激.

AJ

小智 16

您可以使用以下方法进行二进制比较

select *
from Cust
where cast(Surname as varbinary(120)) != cast(lower(Surname) as varbinary(120))
Run Code Online (Sandbox Code Playgroud)

  • @Dinerdo - 问题已从“仅大写值”编辑为“包含大写值” (2认同)

Mar*_*ith 5

其它的办法

SELECT *
FROM Cust
WHERE Surname NOT LIKE '%[^A-Z]%' COLLATE Latin1_General_BIN
Run Code Online (Sandbox Code Playgroud)