sql如何判断两字符串完全相等,包括大小写也一样
我用SQL语句wherepassword='abc'的时候,发现若password为'ABC'它也能查询到记录,这是我不希望的,我想要精确比较两字符串相等,包括大小写,请...
我用SQL语句where password='abc'的时候,发现若password为'ABC'它也能查询到记录,这是我不希望的,我想要精确比较两字符串相等,包括大小写,请问如何写?
展开
4个回答
2012-12-20
展开全部
1> SELECT * FROM tab WHERE val = 'abc123';
2> go
id val
----------- ----------
1 ABC123
(1 行受影响)
SQL Server 大小写不敏感的。
处理方式: 使用 COLLATE Chinese_PRC_CS_AS
1> SELECT * FROM tab WHERE val = 'abc123' COLLATE Chinese_PRC_CS_AS;
2> go
id val
----------- ----------
(0 行受影响)
1> SELECT * FROM tab WHERE val = 'ABC123' COLLATE Chinese_PRC_CS_AS;
2> go
id val
----------- ----------
1 ABC123
(1 行受影响)
2> go
id val
----------- ----------
1 ABC123
(1 行受影响)
SQL Server 大小写不敏感的。
处理方式: 使用 COLLATE Chinese_PRC_CS_AS
1> SELECT * FROM tab WHERE val = 'abc123' COLLATE Chinese_PRC_CS_AS;
2> go
id val
----------- ----------
(0 行受影响)
1> SELECT * FROM tab WHERE val = 'ABC123' COLLATE Chinese_PRC_CS_AS;
2> go
id val
----------- ----------
1 ABC123
(1 行受影响)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
where convert(varbinary, password)=convert(varbinary, N'asd')
转换成二进制 在比较
转换成二进制 在比较
来自:求助得到的回答
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你可以用lower或者upper转换
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询