--source ../include/have_columnstore.inc --disable_warnings DROP DATABASE IF EXISTS json_insert_de; --enable_warnings CREATE DATABASE json_insert_de; USE json_insert_de; --echo # ---------------------------------------------------------------------- --echo # Test of JSON_INSERT|REPLACE|SET function. --echo # ---------------------------------------------------------------------- CREATE TABLE t1(j TEXT, p TEXT, v TEXT) ENGINE = COLUMNSTORE; INSERT INTO t1 VALUES ('{"a":1, "b":{"c":1}, "d":[1, 2]}', '$.b.k1', 'word'); INSERT INTO t1 VALUES ('{"a":1, "b":{"c":1}, "d":[1, 2]}', '$.d[3]', 3); INSERT INTO t1 VALUES ('{"a":1, "b":{"c":1}, "d":[1, 2]}', '$.a[2]', 2); INSERT INTO t1 VALUES ('{"a":1, "b":{"c":1}, "d":[1, 2]}', '$.b.c', 'word'); INSERT INTO t1 VALUES ('1', '$[0]', 4); INSERT INTO t1 VALUES ('[]', '$[0][0]', 100); INSERT INTO t1 VALUES ('1', '$[0][0]', 100); INSERT INTO t1 VALUES ('{ "a": 1, "b": [2, 3]}', '$.a', 10); INSERT INTO t1 VALUES ('{ "a": 1, "b": [2, 3]}', '$.b', '[true, false]'); SELECT j AS json, p AS path, v AS value, JSON_INSERT(j, p, v) AS json_insert, JSON_REPLACE(j, p, v) AS json_replace, JSON_SET(j, p, v) AS json_set FROM t1; DROP TABLE t1; DROP DATABASE json_insert_de;