f7a1c3edac
[FIX](jsonb)fix jsonb is not in predict column #27325
2023-11-21 18:35:12 +08:00
3a954cd1aa
[fix](function)return NULL rather than 'null' if path not found ( #25880 )
...
fix json_extract not return NULL but null
2023-10-30 14:26:44 +08:00
a3361df7b9
[Feat](Nereids) support json and jsonb datatype ( #24156 )
...
Feature:
support jsonb and json type in nereids
Document:
this feature supports these two datatype in nereids optimizer like original planner, the sql reference is same as before
[JSON - Apache Doris](https://doris.apache.org/zh-CN/docs/dev/sql-manual/sql-reference/Data-Types/JSON )
2023-09-20 14:32:22 +08:00
14bd290aec
[feature](jsonb)support json_length and json_contains function ( #24332 )
2023-09-20 10:40:44 +08:00
4b5cea1ef8
[enhancement](fix)change ordinary type null value is \N,complex type null value is null ( #24207 )
2023-09-16 21:46:42 +08:00
268c867679
[Improve](serde)replace function_cast from_string to serde ( #24087 )
...
Now we can not support streamload with column which is map/array nested map/array
serde can do this now , so we can replace it
Notice. if item data in complex type data is empty we just return error, instead of makeup default value , because now we can not define right default for complex type
2023-09-14 13:53:16 +08:00
8ef6b4d996
[fix](json) fix json int128 overflow ( #22917 )
...
* support int128 in jsonb
* fix jsonb int128 write
* fix jsonb to json int128
* fix json functions for int128
* add nereids function jsonb_extract_largeint
* add testcase for json int128
* change docs for json int128
* add nereids function jsonb_extract_largeint
* clang format
* fix check style
* using int128_t = __int128_t for all int128
* use fmt::format_to instead of snprintf digit by digit for int128
* clang format
* delete useless check
* add warn log
* clang format
2023-08-25 11:40:30 +08:00
be55cb8dfc
[Improve](jsonb_extract) support jsonb_extract multi parse path ( #21555 )
...
support jsonb_extract multi parse path
2023-07-12 21:37:36 +08:00
d76fa427a3
[improve](jsonb)Invalid json path prompts an error instead of null ( #19646 )
...
1. Invalid json path prompts an error instead of null:
before:
```sql
mysql> SELECT jsonb_extract('[{"k1":"v41","k2":400},1,"a",3.14]', '$[a]');
+-------------------------------------------------------------+
| jsonb_extract('[{"k1":"v41","k2":400},1,"a",3.14]', '$[a]') |
+-------------------------------------------------------------+
| NULL |
+-------------------------------------------------------------+
1 row in set (0.01 sec)
```
now
```sql
mysql> SELECT jsonb_extract('[{"k1":"v41","k2":400},1,"a",3.14]', '$[a]');
ERROR 1105 (HY000): errCode = 2, detailMessage = (127.0.0.1)[INVALID_ARGUMENT]Json path error: Invalid Json Path for value: $[a]
```
2. fix some problem: https://github.com/apache/doris/pull/19185
a. support negative numbers
```sql
mysql> SELECT jsonb_extract('[{"k1":"v41","k2":400},1,"a",3.14]', '$[-2]');
+--------------------------------------------------------------+
| jsonb_extract('[{"k1":"v41","k2":400},1,"a",3.14]', '$[-2]') |
+--------------------------------------------------------------+
| "a" |
+--------------------------------------------------------------+
1 row in set (0.02 sec)
```
b. Avoid using unnecessary memory
3. Supplementary regression test
2023-06-30 14:29:21 +08:00
f54a068d82
[feature](function) add json->operator convert to json_extract ( #19899 )
2023-05-27 12:45:45 +08:00
c87e78dc35
[bug](jsonb) fix jsonb query bug When the json key value contains "." ( #19185 )
...
Issue Number: close #19173
mysql> SELECT jsonb_extract('{"a.b.c":{"k1":"v31", "k2.a1": 300},"a":"opentelemetry"}', '$."a.b.c".k1');
+-------------------------------------------------------------------------------------------+
| jsonb_extract('{"a.b.c":{"k1":"v31", "k2.a1": 300},"a":"opentelemetry"}', '$."a.b.c".k1') |
+-------------------------------------------------------------------------------------------+
| "v31" |
+-------------------------------------------------------------------------------------------+
1 row in set (0.06 sec)
2023-05-15 15:43:12 +08:00
ee80c12815
[feature](json) add json_extract function ( #17808 )
2023-03-27 21:19:47 +08:00
9f088f6e90
[feature](json) add json_valid function ( #17247 )
...
add json_valid function
Signed-off-by: nextdreamblue <zxw520blue1@163.com >
2023-03-02 14:08:52 +08:00
9eeb8b8711
[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
2022-12-09 21:10:14 +08:00
4faca56819
[bug](jsonb) fix INSERT/CAST NULL to JSONB ( #14682 )
...
Add NULL -> JSONB in implicitCastMap to support INSERT/CAST NULL to JSONB.
2022-11-30 09:53:16 +08:00
fe95b84c34
[fix](jsonb)fix CAST String to JSONB nullable problem ( #14626 )
...
fix CAST String to SONB nullable problem in DEBUG mode.
2022-11-29 16:22:22 +08:00
ed92a8f81e
[feature](jsonb function)change jsonb_extract_string behavior and doc ( #14619 )
...
1. change jsonb_extract_string behavior: convert to string instead of NULL if the type of json path is not string
2. move jsonb tutorial doc to JSONB data type
2022-11-28 11:36:54 +08:00
52c6ba051e
[feature](jsonb type)refactor JSONB type using column and add testcase ( #13778 )
...
1. Refactor JSONB type using ColumnString instead making a copy.
2. Add regression testcase for JSONB load and functions.
2022-11-26 10:06:15 +08:00