Can I use… <=> (Spaceship operator)


BigQueryDb2 (LUW)H2MariaDBMySQLOracle DBPostgreSQLSQL ServerSQLite200520072009201120132015201720192021⊘ 3.39.0 - 3.42.0a⊘ 3.5.7 - 3.38.0⊘ 2008R2 - 2022⊘ 8.3 - 15a⊘ 11gR1 - 21c✓ 5.0+✓ 5.1+⊘ 1.4.192 - 2.1.214a⊘ 9.7 - 11.5.8⊘ 2.0
  1. Supports is not distinct from

The not standardized spaceship operator (<=>) works in some SQL dialects like a null-safe comparison: It is similar to = but never returns unknown. Instead it returns false if only one argument is null or true if both arguments are null.

SELECT …
  FROM …
 WHERE c1 <=> c2

Note that this is not a three-way comparison in the way PHP or C++ use the spaceship operator.

Normative References

<=> is not defined in the SQL standard.

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

Markus Winand on LinkedInMarkus Winand on XINGMarkus Winand on Twitter
“modern SQL” by Markus Winand is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License.
Legal | Contact | NO WARRANTY | Trademarks | Privacy and GDPR | CC-BY-NC-ND 3.0 license