JSON_NORMALIZE
Discover JSON_NORMALIZE in MariaDB. This function recursively sorts keys and removes spaces from a JSON document, enabling reliable equality comparisons and unique constraints on JSON data.
Syntax
JSON_NORMALIZE(json)Description
Recursively sorts keys and removes spaces, allowing comparison of json documents for equality.
Examples
We may wish our application to use the database to enforce a unique constraint on the JSON contents, and we can do so using the JSON_NORMALIZE function in combination with a unique key.
For example, if we have a table with a JSON column:
CREATE TABLE t1 (
id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT,
val JSON,
/* other columns here */
PRIMARY KEY (id)
);Add a unique constraint using JSON_NORMALIZE like this:
We can test this by first inserting a row as normal:
And then seeing what happens with a different string which would produce the same JSON object:
See Also
This page is licensed: CC BY-SA / Gnu FDL
Last updated
Was this helpful?

