我试图使用Hive解析json字符串,我注意到某些值有两个不同的键,例如:
get_json_object(json_string, '$.user_name')
get_json_object(json_string, '$.User_Name')
有没有办法检查一个密钥或另一个密钥是否存在,然后只是将值插入解析表?
我当前的脚本选择了两个并插入到表中,然后另一个脚本检查其中一个键的值是否为空,并在语句时执行大小写。
答案 0 :(得分:2)
select coalesce
(
get_json_object(json_string, '$.user_name')
,get_json_object(json_string, '$.User_Name')
) as username
from tbl_something
答案 1 :(得分:0)
我想出了这个:
Select
CASE WHEN get_json_object(json_string, '$.user_name') is not null THEN get_json_object(json_string, '$.user_name')
ELSE get_json_object(json_string, '$.User_Name')
END AS username
FROM tbl_something;