최종 수정: 에
STRIP_NULL_VALUE
설명
STRIP_NULL_VALUE 함수는 JSON의 NULL 값을 SQL의 NULL 값으로 변환합니다. 그 외의 모든 variant 값은 그대로 유지됩니다.
구문
STRIP_NULL_VALUE( <json_doc> )
필수 매개변수
<json_doc>: JSON 타입이며, 처리할 JSON 객체입니다.
사용 시 참고 사항
- 인수가 NULL이면 NULL을 반환합니다.
- 인수가 json null이면 NULL을 반환합니다.
- null이 아닌 json 데이터의 경우 원래 입력을 반환합니다.
예제
- 데이터 준비
create table my_test(id INT, v json) properties('replication_num' = '1');
insert into my_test values(0, 'null'), (1, null), (2, 123), (3, '{"key": 445}'), (4, '{"key": null}');
select * from my_test;
-
예제 1
select id, v, strip_null_value(v) from my_test order by id;+------+--------------+---------------------+
| id | v | strip_null_value(v) |
+------+--------------+---------------------+
| 0 | null | NULL |
| 1 | NULL | NULL |
| 2 | 123 | 123 |
| 3 | {"key":445} | {"key":445} |
| 4 | {"key":null} | {"key":null} |
+------+--------------+---------------------+
5 rows in set (0.02 sec) -
예제 2
select
id
, v
, strip_null_value(json_extract(v, '$.key'))
from my_test order by id;+------+--------------+--------------------------------------------+
| id | v | strip_null_value(json_extract(v, '$.key')) |
+------+--------------+--------------------------------------------+
| 0 | null | NULL |
| 1 | NULL | NULL |
| 2 | 123 | NULL |
| 3 | {"key":445} | 445 |
| 4 | {"key":null} | NULL |
+------+--------------+--------------------------------------------+