【问题标题】:extra space in sql where condition issue条件问题的sql中的额外空间
【发布时间】:2013-04-08 08:18:28
【问题描述】:

我正在使用SQL Server 2008 r2 并在执行选择命令时遇到问题。 请查看我的表的结构(所有列的数据类型都是 nvarchar):

employee  id      fname   lname
--------------------------------
abcdef    12345   Amit    Sharma
abcdeg    12346   Amit    Shar

当我尝试使用以下命令查询时

select * 
from userinfo 
where employee = 'abcdef   ' and id = '12345    '

它仍然给我返回结果。

我无法确定问题所在。

请给我建议任何我可以做的事情来解决这个问题。

【问题讨论】:

  • “它仍然给我返回结果” ??你到底在期待什么??
  • 这里有什么问题
  • 嗨 chandru 感谢您的回复...我已经编辑了帖子...问题是当我尝试在 where 条件下添加额外的空间时
  • 嗨 NetStarter ...这些条件来自用户输入...如果附加了额外的空格,它不应该返回任何结果,但 SQLSERVER 仍然会忽略额外的空间并返回结果..
  • 那你为什么不在查询中使用 LIKE 而不是 =

标签: sql sql-server-2008


【解决方案1】:

您有一个有效的观点,但根据 SQL 标准,您可以阅读 this link 以了解 =LIKE 的区别,还有 @987654322 @来自米兰巴布什科夫的关于 SO 的回答 希望对你有帮助

【讨论】:

    猜你喜欢
    • 2018-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-25
    相关资源
    最近更新 更多