IS DISTINCT FROM (null-safe not equals comparison)


Apache DerbyBigQueryDb2 (LUW)H2MariaDBMySQLOracle DBPostgreSQLSQL ServerSQLite20082010201220142016201820202022✓ 3.39.0 - 3.45.0b⊘ 3.15.0 - 3.38.0b⊘ 3.5.7 - 3.14.2⚠ 2022c⊘ 2008R2 - 2019✓ 8.3 - 16⊘ 11gR1 - 23cFREE⊘ 5.0 - 8.4a⊘ 5.1 - 11.3a✓ 1.4.192 - 2.2.224⚠ 11.5.0 - 11.5.9c⊘ 9.7 - 11.1⚠ 2.0c⊘ 2.0⊘ 10.15.1.3 - 10.17.1.0
  1. Supports the non-standard spaceship operator instead: <=>
  2. Supports the non-standard binary is operator instead
  3. Not for row-values

The not-equals comparison (<>) returns unknown if one of the compared values is the null value. Is distinct from is similar to <> except that it never returns unknown. Instead it returns true if only one argument is null or false if both arguments are null.

SELECT …
  FROM …
 WHERE c1 IS DISTINCT FROM c2

Normative References

Is distinct from is defined in ISO/IEC 9075-2:2023 as the optional feature T151, “DISTINCT predicate”.

You can’t catch up on 20 years of SQL evolution in one day. Subscribe the newsletter via E-Mail, Twitter or RSS to gradually catch up and to keep modern-⁠sql.com on your radar.

About the Author

Photo of Markus Winand

Markus Winand provides insights into SQL and shows how different systems support it at modern-sql.com. Previously he made use-the-index-luke.com, which is still actively maintained. Markus can be hired as trainer, speaker and consultant via winand.at.

Buy the Book

Cover of “SQL Performance Explained”: Squirrel running on grass

The essence of SQL tuning in 200 pages

Buy now!
(paperback and/or PDF)

Paperback also available at Amazon.com.

Hire Markus

Markus offers SQL training and consulting for developers working at companies of all sizes.
Learn more »

Connect with Markus Winand

Subscribe mailinglistsSubscribe the RSS feedMarkus Winand on LinkedInMarkus Winand on XINGMarkus Winand on TwitterMarkus Winand on Bluesky
Copyright 2015-2024 Markus Winand. All righs reserved.
Legal | Contact | NO WARRANTY | Trademarks | Privacy and GDPR