From 3f619478f796eddbba6e39502fe941b285dd97b1 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sat, 4 May 2024 20:00:34 +0200 Subject: Adding upstream version 1:10.11.6. Signed-off-by: Daniel Baumann --- mysql-test/main/json_normalize.result | 77 +++++++++++++++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 mysql-test/main/json_normalize.result (limited to 'mysql-test/main/json_normalize.result') diff --git a/mysql-test/main/json_normalize.result b/mysql-test/main/json_normalize.result new file mode 100644 index 00000000..b1363ea9 --- /dev/null +++ b/mysql-test/main/json_normalize.result @@ -0,0 +1,77 @@ +set names utf8; +create table t1 (json json); +show create table t1; +Table Create Table +t1 CREATE TABLE `t1` ( + `json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL CHECK (json_valid(`json`)) +) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci +insert into t1 values +('{ }'), +('[ ]'), +('{ "foo" : "bar" }'), +('{ "foo" : "bar", "baz" : "whatever" }'), +('[ 1.2, 0.0, "text", 0, null, true, false ]'), +('[ "string", { "key" : "val", "a" : "b", "c" : [ 10, 9, 8, "seven", 11 ] }]'), +('{ "ăț€": "val1", "âț€":"val2" }'); +select json, json_normalize(json) from t1 +order by json; +json json_normalize(json) +[ ] [] +[ "string", { "key" : "val", "a" : "b", "c" : [ 10, 9, 8, "seven", 11 ] }] ["string",{"a":"b","c":[1.0E1,9.0E0,8.0E0,"seven",1.1E1],"key":"val"}] +[ 1.2, 0.0, "text", 0, null, true, false ] [1.2E0,0.0E0,"text",0.0E0,null,true,false] +{ } {} +{ "foo" : "bar" } {"foo":"bar"} +{ "foo" : "bar", "baz" : "whatever" } {"baz":"whatever","foo":"bar"} +{ "ăț€": "val1", "âț€":"val2" } {"âț€":"val2","ăț€":"val1"} +create view v1 as (select json, json_normalize(json) norm_json from t1); +show create view v1; +View Create View character_set_client collation_connection +v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v1` AS (select `t1`.`json` AS `json`,json_normalize(`t1`.`json`) AS `norm_json` from `t1`) utf8mb3 utf8mb3_general_ci +select * from v1 +order by json; +json norm_json +[ ] [] +[ "string", { "key" : "val", "a" : "b", "c" : [ 10, 9, 8, "seven", 11 ] }] ["string",{"a":"b","c":[1.0E1,9.0E0,8.0E0,"seven",1.1E1],"key":"val"}] +[ 1.2, 0.0, "text", 0, null, true, false ] [1.2E0,0.0E0,"text",0.0E0,null,true,false] +{ } {} +{ "foo" : "bar" } {"foo":"bar"} +{ "foo" : "bar", "baz" : "whatever" } {"baz":"whatever","foo":"bar"} +{ "ăț€": "val1", "âț€":"val2" } {"âț€":"val2","ăț€":"val1"} +select json_normalize(NULL); +json_normalize(NULL) +NULL +select json_normalize('{ "invalid": "no_close"'); +json_normalize('{ "invalid": "no_close"') +NULL +drop table t1; +drop view v1; +create table t1 (text varchar(200) character set 'latin1'); +insert into t1 values (unhex('22E522')); +create table t2 (text varchar(200) character set 'utf8mb4'); +insert into t2 SELECT * FROM t1; +select t1.text, hex(t1.text) from t1; +text hex(t1.text) +"å" 22E522 +select t2.text, hex(t2.text) from t2; +text hex(t2.text) +"å" 22C3A522 +select t1.text +, t2.text +, replace(json_normalize(t1.text), unhex('C3A5'), unhex('C385')) +, replace(json_normalize(t2.text), unhex('C3A5'), unhex('C385')) +, hex(replace(json_normalize(t1.text), unhex('C3A5'), unhex('C385'))) +, hex(replace(json_normalize(t2.text), unhex('C3A5'), unhex('C385'))) +from t1, t2; +text text replace(json_normalize(t1.text), unhex('C3A5'), unhex('C385')) replace(json_normalize(t2.text), unhex('C3A5'), unhex('C385')) hex(replace(json_normalize(t1.text), unhex('C3A5'), unhex('C385'))) hex(replace(json_normalize(t2.text), unhex('C3A5'), unhex('C385'))) +"å" "å" "Å" "Å" 22C38522 22C38522 +drop table t1; +drop table t2; +create table t1 (text varchar(1)); +insert into t1 values ('0'); +select concat_ws(' ', t1.text, t1.text) from t1; +concat_ws(' ', t1.text, t1.text) +0 0 +select concat_ws(' ', json_normalize(t1.text), json_normalize(t1.text)) from t1; +concat_ws(' ', json_normalize(t1.text), json_normalize(t1.text)) +0.0E0 0.0E0 +drop table t1; -- cgit v1.2.3