blob: 012089a3f847c87b7a9925fd5bf5013faabc332d [file] [log] [blame]
// Licensed to the Apache Software Foundation (ASF) under one
// or more contributor license agreements. See the NOTICE file
// distributed with this work for additional information
// regarding copyright ownership. The ASF licenses this file
// to you under the Apache License, Version 2.0 (the
// "License"); you may not use this file except in compliance
// with the License. You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing,
// software distributed under the License is distributed on an
// "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
// KIND, either express or implied. See the License for the
// specific language governing permissions and limitations
// under the License.
suite("regression_test_variant_complexjson", "variant_type_complex_json") {
def create_table = { table_name ->
sql "DROP TABLE IF EXISTS ${table_name}"
sql """
CREATE TABLE IF NOT EXISTS ${table_name} (
k bigint,
v variant
)
DUPLICATE KEY(`k`)
DISTRIBUTED BY RANDOM BUCKETS 5
properties("replication_num" = "1", "disable_auto_compaction" = "true");
"""
}
def table_name = "complexjson"
create_table table_name
sql """insert into ${table_name} values (1, '{
"id": 1,
"key_0":[
{
"key_1":[
{
"key_3":[
{"key_7":1025,"key_6":25.5,"key_4":1048576,"key_5":0.0001048576},
{"key_7":2,"key_6":"","key_4":null}
]
}
]
},
{
"key_1":[
{
"key_3":[
{"key_7":-922337203685477580.8,"key_6":"aqbjfiruu","key_5":-1},
{"key_7":65537,"key_6":"","key_4":""}
]
},
{
"key_3":[
{"key_7":21474836.48,"key_4":"ghdqyeiom","key_5":1048575}
]
}
]
}
]
}')"""
qt_sql """SELECT * from ${table_name} order by cast(v["id"] as int)"""
table_name = "complexjson2"
create_table table_name
sql """insert into ${table_name} values (1, '{
"id": 1,
"key_1":[
{
"key_2":[
{
"key_3":[
{"key_8":65537},
{
"key_4":[
{"key_5":-0.02},
{"key_7":1023},
{"key_7":1,"key_6":9223372036854775807}
]
},
{
"key_4":[{"key_7":65537,"key_6":null}]
}
]
}
]
}
]
}')"""
qt_sql """SELECT * from ${table_name} order by cast(v["id"] as int)"""
table_name = "complexjson3"
create_table table_name
sql """INSERT INTO ${table_name} VALUES (1, '{"key_10":65536,"key_11":"anve","key_0":{"key_1":{"key_2":1025,"key_3":1},"key_4":1,"key_5":256}}')"""
sql """INSERT INTO ${table_name} VALUES (2, '{"key_0":[{"key_12":"buwvq","key_11":0.0000000255}]}')"""
qt_sql """SELECT * from ${table_name} order by k"""
table_name = "complexjson4"
create_table table_name
sql """INSERT INTO ${table_name} VALUES (1, '{
"id": 1,
"key_0":[
{"key_1":{"key_2":[1, 2, 3],"key_8":"sffjx"},"key_10":65535,"key_0":-1},
{"key_10":10.23,"key_0":922337203.685}
]
}')"""
qt_sql """SELECT * from ${table_name} order by cast(v["id"] as int)"""
table_name = "complexjson5"
create_table table_name
sql """INSERT INTO ${table_name} VALUES (1, '{
"id": 1,
"key_0":[
{
"key_1":[
{
"key_2":
{
"key_3":[
{"key_4":255},
{"key_4":65535},
{"key_7":255,"key_6":3}
],
"key_5":[
{"key_7":"nnpqx","key_6":1},
{"key_7":255,"key_6":3}
]
}
}
]
}
]
}')"""
qt_sql """SELECT * from ${table_name} order by cast(v["id"] as int)"""
}