diff options
Diffstat (limited to 'mysql-test/suite/json/t/json_table.test')
-rw-r--r-- | mysql-test/suite/json/t/json_table.test | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/mysql-test/suite/json/t/json_table.test b/mysql-test/suite/json/t/json_table.test index ad3770e84ce..2520c1c97ba 100644 --- a/mysql-test/suite/json/t/json_table.test +++ b/mysql-test/suite/json/t/json_table.test @@ -555,6 +555,17 @@ JSON_TABLE('[]', '$' COLUMNS(a TEXT PATH '$[*]')) AS jt1 ON(1) WHERE 0; +create table t1 (item_name varchar(32), item_props varchar(1024)); +insert into t1 values ('Jeans', '{"color": ["green", "brown"], "price": 50}'); +insert into t1 values ('Shirt', '{"color": ["blue", "white"], "price": 20}'); +insert into t1 values ('Jeans', '{"color": ["black"], "price": 60}'); +insert into t1 values ('Jeans', '{"color": ["gray"], "price": 60}'); +insert into t1 values ('Laptop', '{"color": ["black"], "price": 1000}'); +insert into t1 values ('Shirt', '{"color": ["black"], "price": 20}'); + +select t.item_name, jt.* from (select t1.item_name, concat(concat(concat("{\"color\": ",concat(concat("[\"",group_concat(jt.color separator "\", \"")),"\"]")),','),concat(concat("\"price\": ",jt.price),'}')) as item_props from t1, json_table(t1.item_props, '$' columns (nested path '$.color[*]' columns (color varchar(32) path '$'), price int path '$.price')) as jt group by t1.item_name, jt.price) as t, json_table(t.item_props, '$' columns (nested path '$.color[*]' columns (color varchar(32) path '$'), price int path '$.price')) as jt order by t.item_name, jt.price, jt.color; + +drop table t1; --echo # --echo # End of 10.6 tests |