数组_在HiveQL中包含JSON的等价项

数组_在HiveQL中包含JSON的等价项,hive,hiveql,Hive,Hiveql,HiveQL为其数组数据类型提供了一个array_contains()函数,还提供了json支持 但是,获取json数组时,get_json_object()函数不返回数组数据类型,这意味着数组_contains()函数不能用于生成的json_数组 在HiveQL中,模仿json数组的array_contains()功能的最佳方式是什么 作为一个具体示例,我希望以下内容返回true: array_包含_mimic(get_json_object({“array”:[“one”,“two”]},$

HiveQL为其数组数据类型提供了一个array_contains()函数,还提供了json支持

但是,获取json数组时,get_json_object()函数不返回数组数据类型,这意味着数组_contains()函数不能用于生成的json_数组

在HiveQL中,模仿json数组的array_contains()功能的最佳方式是什么

作为一个具体示例,我希望以下内容返回true:

array_包含_mimic(get_json_object({“array”:[“one”,“two”]},$.array'),“one”)

Brickhouse库()已扩展了用于处理json的UDF

brickhouse UDF“json_split”转换对应于数组的json文本,并将其转换为配置单元数组。你可以用它来实现你所需要的

array_contain( json_split( get_json_object('{"array":["one"],"two"]}', '$.array'), 'one')
Brickhouse还允许您序列化和反序列化任意配置单元结构,因此您可以执行更复杂的操作

使用from_json,您的表达式将是

array_contains( map_index( from_json( str, map( "string", array("string"))),"array"),"one)
Brickhouse库()扩展了用于处理JSON的UDF

brickhouse UDF“json_split”转换对应于数组的json文本,并将其转换为配置单元数组。你可以用它来实现你所需要的

array_contain( json_split( get_json_object('{"array":["one"],"two"]}', '$.array'), 'one')
Brickhouse还允许您序列化和反序列化任意配置单元结构,因此您可以执行更复杂的操作

使用from_json,您的表达式将是

array_contains( map_index( from_json( str, map( "string", array("string"))),"array"),"one)