In MySQL, the JSON_MERGE_PATCH() function performs an RFC 7396 compliant merge of two or more JSON documents, without preserving members having duplicate keys.
You provide the JSON documents as arguments.
When using JSON documents with MySQL, we can use the JSON_ARRAY_APPEND() function to append new values to an array.
The way it works is, you provide the JSON document as the first argument, then follow that up with the path to append to, followed by the value to append.
In MySQL 5.7, this function was called JSON_APPEND() but that name is no longer supported.
When working with JSON and MySQL, sometimes you might need to escape strings so that their quote characters don’t interfere with the interpretation of the JSON document. In such cases, you can use the JSON_QUOTE() function to escape potentially problematic strings.
JSON_QUOTE() is used to produce a valid JSON string literal that can be included in a JSON document. For example, you might want an element in an array to have the text null as a string literal, rather than having an actual null value. This function can be used to ensure that the text is added as a string literal, rather than a null value.
To use it, simply call the function while passing in the string.
In MySQL, you can use the JSON_OBJECT() function to create a JSON object from a list of key/value pairs. You provide each key/value pair as two separate arguments. Each pair becomes a key/value pair in the resulting JSON object.
You must provide an even number of arguments (otherwise, you’d have an incomplete pair somewhere in your list of arguments).
The function also accepts an empty list (i.e. you provide no arguments). In this case, you’ll get an empty object.
In MySQL, you can use the JSON_ARRAY() function to create a JSON array from a list of values. You provide each value as a separate argument. Each argument becomes a separate element of the array.
The function also accepts an empty list (i.e. you provide no arguments). In this case, you’ll get an empty array.
MySQL includes an aggregate function called JSON_OBJECTAGG(). This function enables you to create a JSON object containing key-value pairs. More specifically, it lets you create this JSON object based on the results of a query.
It accepts two arguments, the first of these being used as a key and the second as a value. These arguments can be column names or expressions.
If you’ve been using the JSON_MODIFY() function to modify JSON documents in SQL Server, you might be used to modifying the value part of a key/value property. But did you know that you can also modify the key part?
The trick to doing this is to copy the value to a new key, then delete the old key.
Examples below.