誰か SQL の次の動作を説明していただけますか?
SELECT * FROM MyTable WHERE MyColumn != NULL (0 Results)
SELECT * FROM MyTable WHERE MyColumn <> NULL (0 Results)
SELECT * FROM MyTable WHERE MyColumn IS NOT NULL (568 Results)
ベストアンサー1
<>
は標準 SQL-92 です!=
。 はそれと同等です。 どちらも値を評価しますNULL
が、 -- はNULL
値が存在しないことを示すプレースホルダーです。
そのため、このような状況では述語としてIS NULL
/のみを使用できますIS NOT NULL
。
この動作は SQL Server に固有のものではありません。標準に準拠したすべての SQL 方言は同じように動作します。
注:値が null でないかどうかを比較するにはを使用し、 null でない値IS NOT NULL
と比較するにはを使用します。値が NULL と等しいか等しくないかはわかりませんが、値が NULL か NOT NULL かはわかります。値が NULL 以外の値であるかどうかは比較できます。<> 'YOUR_VALUE'