You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-10-31 18:30:33 +03:00
This patch is the columnstore-part of the task. Columnstore wanted to have previous 32 depth, so this patch aims at keeping the compatibility.
38 lines
1.2 KiB
Plaintext
38 lines
1.2 KiB
Plaintext
--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;
|