如何使用Apache Spark SQL查询在字符串数组中搜索字符串



我有一个字符串数组,如下所示:

SELECT ARRAY('item_1', 'item_2', 'item_3') AS items

结果:

items
Type : ARRAY<STRING>
["item_1","item_2","item_3"]

我想在里面搜索一个项目,但如果我尝试常规方式:

SELECT * FROM items WHERE items = 'item_1'

我会得到这个错误:

由于数据类型不匹配,无法解析"(items.items='item_1'("(items.items='item_1'("中的不同类型(数组和字符串(。线路1位置26

那么,如何使用Spark SQL查询在字符串数组中搜索字符串值呢?

提前感谢=(

使用array_contains函数:

SELECT * FROM items WHERE array_contains(items, 'item_1')

最新更新