SQL 語法中的「不等於」應使用「<>」還是「!=」?

大部分軟體開發者都至少會使用過一種以上的資料庫系統,我們在程式內寫判斷式時,如果運算子是使用「不等於(Not equal)」時,通常都是用 != 表示。在 SQL 中雖然也可以使用 != 表示,但實際上 ANSI SQL-92 標準中使用的是以 <> 表示。

實際上在工作方式、效能或其他方面都沒有差異,唯一有差異的只有語法上的不同而已。

那麼問題來了,應該使用哪一種語法表示才比較好?

以技術層面來說,其實兩者都沒問題,端看個人喜好即可,因為大部分資料系統都支援這兩種表示法,而僅支援 ANSI SQL-92 的資料庫系統幾乎已經停止維護。

以下資料庫系統同時支援 !=<>

以下資料庫系統只支援 ANSI SQL-92 標準<>):

  • IBM DB2 UDB 9.5: <>
  • Microsoft Access 2010: <>

Reference: sql server - Should I use != or <> for not equal in T-SQL? - Stack Overflow

comments powered by Disqus