You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by mo...@apache.org on 2022/12/14 05:59:02 UTC
[doris] 06/12: [Bugfix](Jsonb) fix jsonb load in unique key model (#14958)
This is an automated email from the ASF dual-hosted git repository.
morningman pushed a commit to branch branch-1.2-lts
in repository https://gitbox.apache.org/repos/asf/doris.git
commit ed597bae3b63ac57032a774c02b1814efd1d00b6
Author: lihangyu <15...@163.com>
AuthorDate: Fri Dec 9 21:10:14 2022 +0800
[Bugfix](Jsonb) fix jsonb load in unique key model (#14958)
* [Bugfix](Jsonb) fix jsonb load in unique key model
Register JSONB to `replace_load` agg function
* fix test
---
be/src/vec/utils/template_helpers.hpp | 4 +-
.../test_jsonb_load_unique_key_and_function.out | 3946 ++++++++++++++++++++
.../data/jsonb_p0/test_jsonb_unique_key.csv | 75 +
.../test_jsonb_load_unique_key_and_function.groovy | 397 ++
4 files changed, 4421 insertions(+), 1 deletion(-)
diff --git a/be/src/vec/utils/template_helpers.hpp b/be/src/vec/utils/template_helpers.hpp
index b67f28f3dd..265f74d53d 100644
--- a/be/src/vec/utils/template_helpers.hpp
+++ b/be/src/vec/utils/template_helpers.hpp
@@ -43,7 +43,9 @@
M(Decimal128, ColumnDecimal<Decimal128>) \
M(Decimal128I, ColumnDecimal<Decimal128I>)
-#define STRING_TYPE_TO_COLUMN_TYPE(M) M(String, ColumnString)
+#define STRING_TYPE_TO_COLUMN_TYPE(M) \
+ M(String, ColumnString) \
+ M(JSONB, ColumnString)
#define TIME_TYPE_TO_COLUMN_TYPE(M) \
M(Date, ColumnInt64) \
diff --git a/regression-test/data/jsonb_p0/test_jsonb_load_unique_key_and_function.out b/regression-test/data/jsonb_p0/test_jsonb_load_unique_key_and_function.out
new file mode 100644
index 0000000000..d834c24dcd
--- /dev/null
+++ b/regression-test/data/jsonb_p0/test_jsonb_load_unique_key_and_function.out
@@ -0,0 +1,3946 @@
+-- This file is automatically generated. You should know what you did if you want to edit this
+-- !select --
+1 \N
+2 null
+3 true
+4 false
+5 100
+6 10000
+7 1000000000
+8 1152921504606846976
+9 6.18
+10 "abcd"
+11 {}
+12 {"k1":"v31","k2":300}
+13 []
+14 [123,456]
+15 ["abc","def"]
+16 [null,true,false,100,6.18,"abc"]
+17 [{"k1":"v41","k2":400},1,"a",3.14]
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]}
+
+-- !select --
+1 \N
+2 null
+3 true
+4 false
+5 100
+6 10000
+7 1000000000
+8 1152921504606846976
+9 6.18
+10 "abcd"
+11 {}
+12 {"k1":"v31","k2":300}
+13 []
+14 [123,456]
+15 ["abc","def"]
+16 [null,true,false,100,6.18,"abc"]
+17 [{"k1":"v41","k2":400},1,"a",3.14]
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]}
+26 \N
+27 {"k1":"v1","k2":200}
+
+-- !select --
+1 \N \N
+2 null null
+3 true true
+4 false false
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 1152921504606846976
+9 6.18 6.18
+10 "abcd" "abcd"
+11 {} {}
+12 {"k1":"v31","k2":300} {"k1":"v31","k2":300}
+13 [] []
+14 [123,456] [123,456]
+15 ["abc","def"] ["abc","def"]
+16 [null,true,false,100,6.18,"abc"] [null,true,false,100,6.18,"abc"]
+17 [{"k1":"v41","k2":400},1,"a",3.14] [{"k1":"v41","k2":400},1,"a",3.14]
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]}
+26 \N \N
+27 {"k1":"v1","k2":200} {"k1":"v1","k2":200}
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} "v31"
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} "v31"
+26 \N \N
+27 {"k1":"v1","k2":200} "v1"
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} 300
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 300
+26 \N \N
+27 {"k1":"v1","k2":200} 200
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] 123
+15 ["abc","def"] "abc"
+16 [null,true,false,100,6.18,"abc"] null
+17 [{"k1":"v41","k2":400},1,"a",3.14] {"k1":"v41","k2":400}
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] 456
+15 ["abc","def"] "def"
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] 1
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] "a"
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] 100
+17 [{"k1":"v41","k2":400},1,"a",3.14] 3.14
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] 6.18
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] "abc"
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} [{"k1":"v41","k2":400},1,"a",3.14]
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} {"k1":"v41","k2":400}
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 1
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} "a"
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 3.14
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null null
+3 true true
+4 false false
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 1152921504606846976
+9 6.18 6.18
+10 "abcd" abcd
+11 {} {}
+12 {"k1":"v31","k2":300} {"k1":"v31","k2":300}
+13 [] []
+14 [123,456] [123,456]
+15 ["abc","def"] ["abc","def"]
+16 [null,true,false,100,6.18,"abc"] [null,true,false,100,6.18,"abc"]
+17 [{"k1":"v41","k2":400},1,"a",3.14] [{"k1":"v41","k2":400},1,"a",3.14]
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]}
+26 \N \N
+27 {"k1":"v1","k2":200} {"k1":"v1","k2":200}
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} v31
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} v31
+26 \N \N
+27 {"k1":"v1","k2":200} v1
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} 300
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 300
+26 \N \N
+27 {"k1":"v1","k2":200} 200
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] 123
+15 ["abc","def"] abc
+16 [null,true,false,100,6.18,"abc"] null
+17 [{"k1":"v41","k2":400},1,"a",3.14] {"k1":"v41","k2":400}
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] 456
+15 ["abc","def"] def
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] 1
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] a
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] 100
+17 [{"k1":"v41","k2":400},1,"a",3.14] 3.14
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] 6.18
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] abc
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} [{"k1":"v41","k2":400},1,"a",3.14]
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} {"k1":"v41","k2":400}
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 1
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} a
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 3.14
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} 300
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 300
+26 \N \N
+27 {"k1":"v1","k2":200} 200
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] 123
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] 456
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] 1
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] 100
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 1
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 1152921504606846976
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} 300
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 300
+26 \N \N
+27 {"k1":"v1","k2":200} 200
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] 123
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] 456
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] 1
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] 100
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 1
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100.0
+6 10000 10000.0
+7 1000000000 1.0E9
+8 1152921504606846976 1.15292150460684698E18
+9 6.18 6.18
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} 300.0
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 300.0
+26 \N \N
+27 {"k1":"v1","k2":200} 200.0
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] 123.0
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] 456.0
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] 1.0
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] 100.0
+17 [{"k1":"v41","k2":400},1,"a",3.14] 3.14
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] 6.18
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 1.0
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} 3.14
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true true
+4 false false
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null true
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} false
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} false
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null true
+3 true true
+4 false true
+5 100 true
+6 10000 true
+7 1000000000 true
+8 1152921504606846976 true
+9 6.18 true
+10 "abcd" true
+11 {} true
+12 {"k1":"v31","k2":300} true
+13 [] true
+14 [123,456] true
+15 ["abc","def"] true
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] true
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} true
+26 \N \N
+27 {"k1":"v1","k2":200} true
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} true
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} true
+26 \N \N
+27 {"k1":"v1","k2":200} true
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} true
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} true
+26 \N \N
+27 {"k1":"v1","k2":200} true
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] true
+15 ["abc","def"] true
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] true
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] true
+15 ["abc","def"] true
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] true
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] true
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] true
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] true
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} true
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} true
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} true
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} true
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} true
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null false
+3 true false
+4 false false
+5 100 false
+6 10000 false
+7 1000000000 false
+8 1152921504606846976 false
+9 6.18 false
+10 "abcd" false
+11 {} false
+12 {"k1":"v31","k2":300} false
+13 [] false
+14 [123,456] false
+15 ["abc","def"] false
+16 [null,true,false,100,6.18,"abc"] false
+17 [{"k1":"v41","k2":400},1,"a",3.14] false
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} false
+26 \N \N
+27 {"k1":"v1","k2":200} false
+
+-- !select --
+1 \N \N
+2 null null
+3 true bool
+4 false bool
+5 100 int
+6 10000 int
+7 1000000000 int
+8 1152921504606846976 bigint
+9 6.18 double
+10 "abcd" string
+11 {} object
+12 {"k1":"v31","k2":300} object
+13 [] array
+14 [123,456] array
+15 ["abc","def"] array
+16 [null,true,false,100,6.18,"abc"] array
+17 [{"k1":"v41","k2":400},1,"a",3.14] array
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} object
+26 \N \N
+27 {"k1":"v1","k2":200} object
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} string
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} string
+26 \N \N
+27 {"k1":"v1","k2":200} string
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} int
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} int
+26 \N \N
+27 {"k1":"v1","k2":200} int
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] int
+15 ["abc","def"] string
+16 [null,true,false,100,6.18,"abc"] null
+17 [{"k1":"v41","k2":400},1,"a",3.14] object
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] int
+15 ["abc","def"] string
+16 [null,true,false,100,6.18,"abc"] bool
+17 [{"k1":"v41","k2":400},1,"a",3.14] int
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] bool
+17 [{"k1":"v41","k2":400},1,"a",3.14] string
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] int
+17 [{"k1":"v41","k2":400},1,"a",3.14] double
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] double
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] string
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} array
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} object
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} int
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} string
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} double
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true true
+4 false false
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100
+6 10000 10000
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 1152921504606846976
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100.0
+6 10000 10000.0
+7 1000000000 1.0E9
+8 1152921504606846976 1.15292150460684698E18
+9 6.18 6.18
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null null
+3 true true
+4 false false
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 1152921504606846976
+9 6.18 6.18
+10 "abcd" "abcd"
+11 {} {}
+12 {"k1":"v31","k2":300} {"k1":"v31","k2":300}
+13 [] []
+14 [123,456] [123,456]
+15 ["abc","def"] ["abc","def"]
+16 [null,true,false,100,6.18,"abc"] [null,true,false,100,6.18,"abc"]
+17 [{"k1":"v41","k2":400},1,"a",3.14] [{"k1":"v41","k2":400},1,"a",3.14]
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]}
+26 \N \N
+27 {"k1":"v1","k2":200} {"k1":"v1","k2":200}
+
+-- !select --
+1 \N \N
+2 null \N
+3 true true
+4 false false
+5 100 \N
+6 10000 \N
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100
+6 10000 10000
+7 1000000000 \N
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 \N
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 1152921504606846976
+9 6.18 \N
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null \N
+3 true \N
+4 false \N
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 1.15292150460685e+18
+9 6.18 6.18
+10 "abcd" \N
+11 {} \N
+12 {"k1":"v31","k2":300} \N
+13 [] \N
+14 [123,456] \N
+15 ["abc","def"] \N
+16 [null,true,false,100,6.18,"abc"] \N
+17 [{"k1":"v41","k2":400},1,"a",3.14] \N
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} \N
+26 \N \N
+27 {"k1":"v1","k2":200} \N
+
+-- !select --
+1 \N \N
+2 null null
+3 true true
+4 false false
+5 100 100
+6 10000 10000
+7 1000000000 1000000000
+8 1152921504606846976 1152921504606846976
+9 6.18 6.18
+10 "abcd" "abcd"
+11 {} {}
+12 {"k1":"v31","k2":300} {"k1":"v31","k2":300}
+13 [] []
+14 [123,456] [123,456]
+15 ["abc","def"] ["abc","def"]
+16 [null,true,false,100,6.18,"abc"] [null,true,false,100,6.18,"abc"]
+17 [{"k1":"v41","k2":400},1,"a",3.14] [{"k1":"v41","k2":400},1,"a",3.14]
+18 {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]} {"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]}
+26 \N \N
+27 {"k1":"v1","k2":200} {"k1":"v1","k2":200}
+
+-- !select --
+\N
+
+-- !select --
+null
+
+-- !select --
+true
+
+-- !select --
+false
+
+-- !select --
+100
+
+-- !select --
+10000
+
+-- !select --
+1000000000
+
+-- !select --
+1152921504606846976
+
+-- !select --
+6.18
+
+-- !select --
+"abcd"
+
+-- !select --
+{}
+
+-- !select --
+{"k1":"v31","k2":300}
+
+-- !select --
+[]
+
+-- !select --
+[123,456]
+
+-- !select --
+["abc","def"]
+
+-- !select --
+[null,true,false,100,6.18,"abc"]
+
+-- !select --
+[{"k1":"v41","k2":400},1,"a",3.14]
+
+-- !select --
+{"k1":"v31","k2":300,"a1":[{"k1":"v41","k2":400},1,"a",3.14]}
+
+-- !select --
+\N
+
+-- !select --
+\N
+
+-- !select --
+\N
+
+-- !select --
+\N
+
+-- !select --
+\N
+
+-- !select --
+\N
+
+-- !select --
+\N
+
diff --git a/regression-test/data/jsonb_p0/test_jsonb_unique_key.csv b/regression-test/data/jsonb_p0/test_jsonb_unique_key.csv
new file mode 100644
index 0000000000..88cc692786
--- /dev/null
+++ b/regression-test/data/jsonb_p0/test_jsonb_unique_key.csv
@@ -0,0 +1,75 @@
+1 \N
+2 null
+3 true
+4 false
+5 100
+6 10000
+7 1000000000
+8 1152921504606846976
+9 6.18
+10 "abcd"
+11 {}
+12 {"k1":"v31", "k2": 300}
+13 []
+14 [123, 456]
+15 ["abc", "def"]
+16 [null, true, false, 100, 6.18, "abc"]
+17 [{"k1":"v41", "k2": 400}, 1, "a", 3.14]
+18 {"k1":"v31", "k2": 300, "a1": [{"k1":"v41", "k2": 400}, 1, "a", 3.14]}
+19 ''
+20 'abc'
+21 abc
+22 100x
+23 6.a8
+24 {x
+25 [123, abc]
+1 \N
+2 null
+3 true
+4 false
+5 100
+6 10000
+7 1000000000
+8 1152921504606846976
+9 6.18
+10 "abcd"
+11 {}
+12 {"k1":"v31", "k2": 300}
+13 []
+14 [123, 456]
+15 ["abc", "def"]
+16 [null, true, false, 100, 6.18, "abc"]
+17 [{"k1":"v41", "k2": 400}, 1, "a", 3.14]
+18 {"k1":"v31", "k2": 300, "a1": [{"k1":"v41", "k2": 400}, 1, "a", 3.14]}
+19 ''
+20 'abc'
+21 abc
+22 100x
+23 6.a8
+24 {x
+25 [123, abc]
+1 \N
+2 null
+3 true
+4 false
+5 100
+6 10000
+7 1000000000
+8 1152921504606846976
+9 6.18
+10 "abcd"
+11 {}
+12 {"k1":"v31", "k2": 300}
+13 []
+14 [123, 456]
+15 ["abc", "def"]
+16 [null, true, false, 100, 6.18, "abc"]
+17 [{"k1":"v41", "k2": 400}, 1, "a", 3.14]
+18 {"k1":"v31", "k2": 300, "a1": [{"k1":"v41", "k2": 400}, 1, "a", 3.14]}
+19 ''
+20 'abc'
+21 abc
+22 100x
+23 6.a8
+24 {x
+25 [123, abc]
diff --git a/regression-test/suites/jsonb_p0/test_jsonb_load_unique_key_and_function.groovy b/regression-test/suites/jsonb_p0/test_jsonb_load_unique_key_and_function.groovy
new file mode 100644
index 0000000000..4c3bd82e83
--- /dev/null
+++ b/regression-test/suites/jsonb_p0/test_jsonb_load_unique_key_and_function.groovy
@@ -0,0 +1,397 @@
+// 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("test_jsonb_unique_load_and_function", "p0") {
+ // define a sql table
+ def testTable = "tbl_test_jsonb_unique"
+ def dataFile = "test_jsonb_unique_key.csv"
+
+ sql """ set enable_vectorized_engine = true """
+
+ sql "DROP TABLE IF EXISTS ${testTable}"
+
+ sql """
+ CREATE TABLE IF NOT EXISTS ${testTable} (
+ id INT,
+ j JSONB
+ )
+ UNIQUE KEY(id)
+ DISTRIBUTED BY HASH(id) BUCKETS 10
+ PROPERTIES("replication_num" = "1");
+ """
+
+ // load the jsonb data from csv file
+ // fail by default for invalid data rows
+ streamLoad {
+ table testTable
+
+ file dataFile // import csv file
+ time 10000 // limit inflight 10s
+
+ // if declared a check callback, the default check condition will ignore.
+ // So you must check all condition
+ check { result, exception, startTime, endTime ->
+ if (exception != null) {
+ throw exception
+ }
+ log.info("Stream load result: ${result}".toString())
+ def json = parseJson(result)
+ assertEquals("fail", json.Status.toLowerCase())
+ assertEquals("too many filtered rows", json.Message)
+ assertEquals(75, json.NumberTotalRows)
+ assertEquals(54, json.NumberLoadedRows)
+ assertEquals(21, json.NumberFilteredRows)
+ assertTrue(json.LoadBytes > 0)
+ }
+ }
+
+ // load the jsonb data from csv file
+ // success with header 'max_filter_ratio: 0.3'
+ streamLoad {
+ table testTable
+
+ // set http request header params
+ set 'max_filter_ratio', '0.3'
+ file dataFile // import csv file
+ time 10000 // limit inflight 10s
+
+ // if declared a check callback, the default check condition will ignore.
+ // So you must check all condition
+ check { result, exception, startTime, endTime ->
+ if (exception != null) {
+ throw exception
+ }
+ log.info("Stream load result: ${result}".toString())
+ def json = parseJson(result)
+ assertEquals("success", json.Status.toLowerCase())
+ assertEquals(75, json.NumberTotalRows)
+ assertEquals(54, json.NumberLoadedRows)
+ assertEquals(21, json.NumberFilteredRows)
+ assertTrue(json.LoadBytes > 0)
+ }
+ }
+
+ // check result
+ qt_select "SELECT * FROM ${testTable} ORDER BY id"
+
+ // insert into valid json rows
+ sql """INSERT INTO ${testTable} VALUES(26, NULL)"""
+ sql """INSERT INTO ${testTable} VALUES(27, '{"k1":"v1", "k2": 200}')"""
+
+ // insert into invalid json rows with enable_insert_strict=true
+ // expect excepiton and no rows not changed
+ sql """ set enable_insert_strict = true """
+ success = true
+ try {
+ sql """INSERT INTO ${testTable} VALUES(26, '')"""
+ } catch(Exception ex) {
+ logger.info("""INSERT INTO ${testTable} invalid json failed: """ + ex)
+ success = false
+ }
+ assertEquals(false, success)
+ success = true
+ try {
+ sql """INSERT INTO ${testTable} VALUES(26, 'abc')"""
+ } catch(Exception ex) {
+ logger.info("""INSERT INTO ${testTable} invalid json failed: """ + ex)
+ success = false
+ }
+ assertEquals(false, success)
+
+ // insert into invalid json rows with enable_insert_strict=false
+ // expect no excepiton but no rows not changed
+ sql """ set enable_insert_strict = false """
+ success = true
+ try {
+ sql """INSERT INTO ${testTable} VALUES(26, '')"""
+ } catch(Exception ex) {
+ logger.info("""INSERT INTO ${testTable} invalid json failed: """ + ex)
+ success = false
+ }
+ assertEquals(true, success)
+ success = true
+ try {
+ sql """INSERT INTO ${testTable} VALUES(26, 'abc')"""
+ } catch(Exception ex) {
+ logger.info("""INSERT INTO ${testTable} invalid json failed: """ + ex)
+ success = false
+ }
+ assertEquals(true, success)
+
+ qt_select "SELECT * FROM ${testTable} ORDER BY id"
+
+ // jsonb_extract
+ qt_select "SELECT id, j, jsonb_extract(j, '\$') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract(j, '\$.k1') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$.k2') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract(j, '\$[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$[5]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$[6]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$[10]') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract(j, '\$.a1') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract(j, '\$.a1[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$.a1[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$.a1[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$.a1[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$.a1[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract(j, '\$.a1[10]') FROM ${testTable} ORDER BY id"
+
+ // jsonb_extract_string
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$.k1') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$.k2') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$[5]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$[6]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$[10]') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$.a1') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$.a1[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$.a1[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$.a1[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$.a1[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$.a1[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_string(j, '\$.a1[10]') FROM ${testTable} ORDER BY id"
+
+ // jsonb_extract_int
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$.k1') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$.k2') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$[5]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$[6]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$[10]') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$.a1') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$.a1[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$.a1[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$.a1[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$.a1[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$.a1[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_int(j, '\$.a1[10]') FROM ${testTable} ORDER BY id"
+
+ // jsonb_extract_bigint
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$.k1') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$.k2') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$[5]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$[6]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$[10]') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$.a1') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$.a1[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$.a1[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$.a1[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$.a1[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$.a1[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bigint(j, '\$.a1[10]') FROM ${testTable} ORDER BY id"
+
+
+ // jsonb_extract_double
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$.k1') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$.k2') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$[5]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$[6]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$[10]') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$.a1') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$.a1[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$.a1[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$.a1[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$.a1[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$.a1[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_double(j, '\$.a1[10]') FROM ${testTable} ORDER BY id"
+
+ // jsonb_extract_bool
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$.k1') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$.k2') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$[5]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$[6]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$[10]') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$.a1') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$.a1[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$.a1[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$.a1[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$.a1[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$.a1[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_bool(j, '\$.a1[10]') FROM ${testTable} ORDER BY id"
+
+ // jsonb_extract_isnull
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$.k1') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$.k2') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$[5]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$[6]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$[10]') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$.a1') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$.a1[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$.a1[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$.a1[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$.a1[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$.a1[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_extract_isnull(j, '\$.a1[10]') FROM ${testTable} ORDER BY id"
+
+ // jsonb_exists_path
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$.k1') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$.k2') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$[5]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$[6]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$[10]') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$.a1') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$.a1[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$.a1[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$.a1[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$.a1[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$.a1[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_exists_path(j, '\$.a1[10]') FROM ${testTable} ORDER BY id"
+
+ // jsonb_type
+ qt_select "SELECT id, j, jsonb_type(j, '\$') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_type(j, '\$.k1') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$.k2') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_type(j, '\$[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$[5]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$[6]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$[10]') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_type(j, '\$.a1') FROM ${testTable} ORDER BY id"
+
+ qt_select "SELECT id, j, jsonb_type(j, '\$.a1[0]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$.a1[1]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$.a1[2]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$.a1[3]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$.a1[4]') FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, jsonb_type(j, '\$.a1[10]') FROM ${testTable} ORDER BY id"
+
+
+ // CAST from JSONB
+ qt_select "SELECT id, j, CAST(j AS BOOLEAN) FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, CAST(j AS SMALLINT) FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, CAST(j AS INT) FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, CAST(j AS BIGINT) FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, CAST(j AS DOUBLE) FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, CAST(j AS STRING) FROM ${testTable} ORDER BY id"
+
+ // CAST to JSONB
+ qt_select "SELECT id, j, CAST(CAST(j AS BOOLEAN) AS JSONB) FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, CAST(CAST(j AS SMALLINT) AS JSONB) FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, CAST(CAST(j AS INT) AS JSONB) FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, CAST(CAST(j AS BIGINT) AS JSONB) FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, CAST(CAST(j AS DOUBLE) AS JSONB) FROM ${testTable} ORDER BY id"
+ qt_select "SELECT id, j, CAST(CAST(j AS STRING) AS JSONB) FROM ${testTable} ORDER BY id"
+
+ qt_select """SELECT CAST(NULL AS JSONB)"""
+ qt_select """SELECT CAST('null' AS JSONB)"""
+ qt_select """SELECT CAST('true' AS JSONB)"""
+ qt_select """SELECT CAST('false' AS JSONB)"""
+ qt_select """SELECT CAST('100' AS JSONB)"""
+ qt_select """SELECT CAST('10000' AS JSONB)"""
+ qt_select """SELECT CAST('1000000000' AS JSONB)"""
+ qt_select """SELECT CAST('1152921504606846976' AS JSONB)"""
+ qt_select """SELECT CAST('6.18' AS JSONB)"""
+ qt_select """SELECT CAST('"abcd"' AS JSONB)"""
+ qt_select """SELECT CAST('{}' AS JSONB)"""
+ qt_select """SELECT CAST('{"k1":"v31", "k2": 300}' AS JSONB)"""
+ qt_select """SELECT CAST('[]' AS JSONB)"""
+ qt_select """SELECT CAST('[123, 456]' AS JSONB)"""
+ qt_select """SELECT CAST('["abc", "def"]' AS JSONB)"""
+ qt_select """SELECT CAST('[null, true, false, 100, 6.18, "abc"]' AS JSONB)"""
+ qt_select """SELECT CAST('[{"k1":"v41", "k2": 400}, 1, "a", 3.14]' AS JSONB)"""
+ qt_select """SELECT CAST('{"k1":"v31", "k2": 300, "a1": [{"k1":"v41", "k2": 400}, 1, "a", 3.14]}' AS JSONB)"""
+ qt_select """SELECT CAST("''" AS JSONB)"""
+ qt_select """SELECT CAST("'abc'" AS JSONB)"""
+ qt_select """SELECT CAST('abc' AS JSONB)"""
+ qt_select """SELECT CAST('100x' AS JSONB)"""
+ qt_select """SELECT CAST('6.a8' AS JSONB)"""
+ qt_select """SELECT CAST('{x' AS JSONB)"""
+ qt_select """SELECT CAST('[123, abc]' AS JSONB)"""
+
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org