T822, “SQL/JSON: IS JSON WITH UNIQUE KEYS predicate”


BigQuery 2025-09-02Db2 (LUW) 12.1.2Derby 10.17.1.0H2 2.3.232MariaDB 12.0.2MySQL 9.4.0Oracle DB 23.9PostgreSQL 17SQL Server 2022SQLite 3.50.0is json [without unique [keys]]is json  with    unique [keys] 

Check for a correct JSON format, either accepting or rejecting objects that have duplicate keys.

SELECT *
  FROM …
 WHERE j IS JSON WITH UNIQUE KEYS

The example returns rows for which the contents of the column j is valid JSON in which no object has duplicate keys. The following example is therefore not returned because it has an object that contains the key c twice.

{"a": 42
,"b": [{"c":1, "c":2}]
}
Optional Features
Tutorials

Normative References

T822, “SQL/JSON: IS JSON WITH UNIQUE KEYS predicate”, is an optional feature of ISO/IEC 9075-2:2023. It first appeared in the 2016 revision.

You can’t catch up on 20 years of SQL evolution in one day. Subscribe the newsletter via E-Mail, Bluesky 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-2025 Markus Winand. All righs reserved.
Legal | Contact | NO WARRANTY | Trademarks | Privacy and GDPR