【问题标题】:How to search a string in an array of strings using Apache Spark SQL query?如何使用 Apache Spark SQL 查询在字符串数组中搜索字符串?
【发布时间】:2022-01-19 18:11:42
【问题描述】:

我有一个这样的字符串数组:

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 查询在字符串数组中搜索字符串值?

提前致谢 =)

【问题讨论】:

    标签: sql apache-spark apache-spark-sql


    【解决方案1】:

    使用array_contains函数:

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

    【讨论】:

      猜你喜欢
      • 2021-07-24
      • 2011-07-22
      • 2022-01-23
      • 2022-01-23
      • 2021-09-15
      • 2019-09-08
      • 2011-07-04
      • 1970-01-01
      相关资源
      最近更新 更多