【问题标题】:Difference between <> and != operators in MSSQL Server [duplicate]SQL Server 中 <> 和 != 运算符之间的区别 [重复]
【发布时间】:2014-03-28 18:24:46
【问题描述】:

我在 MSSQL server 2012 中工作。我写了一个查询

select * from Mytable where col1 is not null and  col1 != '' 

select * from Mytable where col1 is not null and  col1 <> ''

两者都返回相同的值。我只是想知道,&lt;&gt;!= 运算符之间的实际区别是什么?

【问题讨论】:

  • 谢谢。我在stackoverflow中搜索了这个问题,但我无法得到它。所以我发布了这个问题。但是这个问题是重复的:-)
  • 它们不相等,也就是说它们彼此相等...这里也有方便的替代方案:WHERE NULLIF(col1,'') IS NOT NULLWHERE ISNULL(col1,'') &lt;&gt; ''

标签: sql sql-server operators


【解决方案1】:

我的理解是没有区别。 &lt;&gt; 运算符是 ANSI SQL 标准的不等式运算符,而 Microsoft 包含 != 以使其类似于某些编程语言。

【讨论】:

    【解决方案2】:

    != 不符合 ANSI。
    就是这样。
    使用&lt;&gt;

    UPD。哦,here

    【讨论】:

      【解决方案3】:

      从技术上讲,!= 和 之间没有区别。两者的工作方式相同,在性能或结果方面绝对没有区别。

      【讨论】:

        猜你喜欢
        • 2010-12-30
        • 2022-01-19
        • 1970-01-01
        • 1970-01-01
        • 2013-05-16
        • 2021-12-18
        • 2017-12-25
        • 2013-05-17
        相关资源
        最近更新 更多