Watch the 7.3 Webinar On-Demand
This new release brings updates to Universal Storage, query optimization, and usability that you won’t want to miss.

JSON_ARRAY_PUSH_<type>

This is a set of three JSON functions, which add the given element to the end of a JSON array. Arrays are of the form:

["foo", "bar", "baz"]
["foo", 1, 2, 3]
  • JSON_ARRAY_PUSH_DOUBLE is for all numeric data. Javascript has only one numeric type.
  • JSON_ARRAY_PUSH_STRING is for all text and binary types.
  • JSON_ARRAY_PUSH_JSON is for all valid Javascript types, including true, false, JSON maps, and lists.
JSON_ARRAY_PUSH_<type>(json, value)

Arguments

  • json: a valid JSON array, or the name of a JSON column
  • value: the value to add to the array

Return Value

  • The complete array including the new element.
  • SQL NULL if json is not a valid JSON array.

Examples

SELECT JSON_ARRAY_PUSH_STRING('["foo", "bar"]', 'foo') AS add_foo;
+---------------------+
| add_foo             |
+---------------------+
| ["foo","bar","foo"] |
+---------------------+

SELECT JSON_ARRAY_PUSH_JSON('["foo", false]', '{"a":"b"}') AS add_map;
+-------------------------+
| add_map                 |
+-------------------------+
| ["foo",false,{"a":"b"}] |
+-------------------------+