summaryrefslogtreecommitdiff
path: root/mysql-test/suite/json/t/json_table.test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/json/t/json_table.test')
-rw-r--r--mysql-test/suite/json/t/json_table.test11
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