如何查找全部大写的列值?像LastName = 'SMITH'而不是'Smith'
这就是我所尝试的..。
SELECT *
FROM MyTable
WHERE FirstName = UPPER(FirstName)发布于 2011-11-17 23:37:32
可以强制使用区分大小写的排序规则;
select * from T
where fld = upper(fld) collate SQL_Latin1_General_CP1_CS_AS发布于 2011-11-17 23:39:40
试一试
SELECT *
FROM MyTable
WHERE FirstName = UPPER(FirstName) COLLATE SQL_Latin1_General_CP1_CS_AS此排序规则允许区分大小写的比较。
如果要更改数据库的排序规则,以便不需要在查询中指定区分大小写的排序规则,则需要执行以下操作(from MSDN):
1)确保您拥有重新创建用户数据库和其中的所有对象所需的所有信息或脚本。
2)使用bcp Utility等工具导出所有数据。
3)删除所有用户数据库。
4)重建master数据库,在setup命令的SQLCOLLATION属性中指定新的排序规则。例如:
Setup /QUIET /ACTION=REBUILDDATABASE /INSTANCENAME=InstanceName
/SQLSYSADMINACCOUNTS=accounts /[ SAPWD= StrongPassword ]
/SQLCOLLATION=CollationName5)创建所有数据库和其中的所有对象。
6)导入所有数据。
发布于 2011-11-17 23:38:38
您需要使用区分大小写的服务器排序规则,如下所示:
SELECT *
FROM MyTable
WHERE FirstName = UPPER(FirstName) Collate SQL_Latin1_General_CP1_CS_AShttps://stackoverflow.com/questions/8169792
复制相似问题