mirror of
https://github.com/MariaDB/server.git
synced 2025-08-08 11:22:35 +03:00
let numeric in the DEMAULT.
This commit is contained in:
committed by
Rucha Deodhar
parent
05d049bdbe
commit
6b6d745b9e
@@ -57,14 +57,14 @@ Jeans {"color": "blue", "price": 50} blue
|
|||||||
select * from t1 right join json_table(t1.item_props,'$' columns( color varchar(100) path '$.color')) as T on 1;
|
select * from t1 right join json_table(t1.item_props,'$' columns( color varchar(100) path '$.color')) as T on 1;
|
||||||
ERROR 42S22: Unknown column 't1.item_props' in 'JSON_TABLE argument'
|
ERROR 42S22: Unknown column 't1.item_props' in 'JSON_TABLE argument'
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
select * from JSON_TABLE( '[ {"xa": 1, "b": [11,111]}, {"a": 2, "b": [22,222]}, {"a":3}]', '$[*]' COLUMNS( a INT PATH '$.a' default '101' on empty, NESTED PATH '$.b[*]' COLUMNS (b INT PATH '$'))) as jt;
|
select * from JSON_TABLE( '[ {"xa": 1, "b": [11,111]}, {"a": 2, "b": [22,222]}, {"a":3}]', '$[*]' COLUMNS( a INT PATH '$.a' default 101 on empty, NESTED PATH '$.b[*]' COLUMNS (b INT PATH '$'))) as jt;
|
||||||
a b
|
a b
|
||||||
101 11
|
101 11
|
||||||
101 111
|
101 111
|
||||||
2 22
|
2 22
|
||||||
2 222
|
2 222
|
||||||
3 NULL
|
3 NULL
|
||||||
select * from JSON_TABLE( '[ {"xa": 1, "b": [11,111]}, {"a": 2, "b": [22,222]}, {"a":3}]', '$[*]' COLUMNS( a INT PATH '$.a' default '202' on error, NESTED PATH '$.b[*]' COLUMNS (b INT PATH '$'))) as jt;
|
select * from JSON_TABLE( '[ {"xa": 1, "b": [11,111]}, {"a": 2, "b": [22,222]}, {"a":3}]', '$[*]' COLUMNS( a INT PATH '$.a' default 202 on error, NESTED PATH '$.b[*]' COLUMNS (b INT PATH '$'))) as jt;
|
||||||
a b
|
a b
|
||||||
NULL 11
|
NULL 11
|
||||||
NULL 111
|
NULL 111
|
||||||
|
@@ -30,9 +30,9 @@ select * from t1 right join json_table(t1.item_props,'$' columns( color varchar(
|
|||||||
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
|
|
||||||
select * from JSON_TABLE( '[ {"xa": 1, "b": [11,111]}, {"a": 2, "b": [22,222]}, {"a":3}]', '$[*]' COLUMNS( a INT PATH '$.a' default '101' on empty, NESTED PATH '$.b[*]' COLUMNS (b INT PATH '$'))) as jt;
|
select * from JSON_TABLE( '[ {"xa": 1, "b": [11,111]}, {"a": 2, "b": [22,222]}, {"a":3}]', '$[*]' COLUMNS( a INT PATH '$.a' default 101 on empty, NESTED PATH '$.b[*]' COLUMNS (b INT PATH '$'))) as jt;
|
||||||
|
|
||||||
select * from JSON_TABLE( '[ {"xa": 1, "b": [11,111]}, {"a": 2, "b": [22,222]}, {"a":3}]', '$[*]' COLUMNS( a INT PATH '$.a' default '202' on error, NESTED PATH '$.b[*]' COLUMNS (b INT PATH '$'))) as jt;
|
select * from JSON_TABLE( '[ {"xa": 1, "b": [11,111]}, {"a": 2, "b": [22,222]}, {"a":3}]', '$[*]' COLUMNS( a INT PATH '$.a' default 202 on error, NESTED PATH '$.b[*]' COLUMNS (b INT PATH '$'))) as jt;
|
||||||
|
|
||||||
select * from JSON_TABLE( '[ {"a": [1, 2], "b": [11,111]}, {"a": 2, "b": [22,222]}, {"a":3}]', '$[*]' COLUMNS( a INT PATH '$.a' default '101' on empty, NESTED PATH '$.b[*]' COLUMNS (b INT PATH '$'))) as jt;
|
select * from JSON_TABLE( '[ {"a": [1, 2], "b": [11,111]}, {"a": 2, "b": [22,222]}, {"a":3}]', '$[*]' COLUMNS( a INT PATH '$.a' default '101' on empty, NESTED PATH '$.b[*]' COLUMNS (b INT PATH '$'))) as jt;
|
||||||
|
|
||||||
|
@@ -1313,6 +1313,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
|
|||||||
TEXT_STRING
|
TEXT_STRING
|
||||||
NCHAR_STRING
|
NCHAR_STRING
|
||||||
json_text_literal
|
json_text_literal
|
||||||
|
json_text_literal_or_num
|
||||||
|
|
||||||
%type <lex_str_ptr>
|
%type <lex_str_ptr>
|
||||||
opt_table_alias_clause
|
opt_table_alias_clause
|
||||||
@@ -11570,6 +11571,26 @@ json_text_literal:
|
|||||||
}
|
}
|
||||||
;
|
;
|
||||||
|
|
||||||
|
json_text_literal_or_num:
|
||||||
|
json_text_literal
|
||||||
|
| NUM
|
||||||
|
{
|
||||||
|
Lex->json_table->m_text_literal_cs= NULL;
|
||||||
|
}
|
||||||
|
| LONG_NUM
|
||||||
|
{
|
||||||
|
Lex->json_table->m_text_literal_cs= NULL;
|
||||||
|
}
|
||||||
|
| DECIMAL_NUM
|
||||||
|
{
|
||||||
|
Lex->json_table->m_text_literal_cs= NULL;
|
||||||
|
}
|
||||||
|
| FLOAT_NUM
|
||||||
|
{
|
||||||
|
Lex->json_table->m_text_literal_cs= NULL;
|
||||||
|
}
|
||||||
|
;
|
||||||
|
|
||||||
join_table_list:
|
join_table_list:
|
||||||
derived_table_list { MYSQL_YYABORT_UNLESS($$=$1); }
|
derived_table_list { MYSQL_YYABORT_UNLESS($$=$1); }
|
||||||
;
|
;
|
||||||
@@ -11684,7 +11705,7 @@ json_on_response:
|
|||||||
{
|
{
|
||||||
$$.m_response= Json_table_column::RESPONSE_NULL;
|
$$.m_response= Json_table_column::RESPONSE_NULL;
|
||||||
}
|
}
|
||||||
| DEFAULT json_text_literal
|
| DEFAULT json_text_literal_or_num
|
||||||
{
|
{
|
||||||
$$.m_response= Json_table_column::RESPONSE_DEFAULT;
|
$$.m_response= Json_table_column::RESPONSE_DEFAULT;
|
||||||
$$.m_default= $2;
|
$$.m_default= $2;
|
||||||
|
Reference in New Issue
Block a user