【问题标题】:Passing the scala list element as a parameter in a filter expression将 scala 列表元素作为过滤器表达式中的参数传递
【发布时间】:2023-03-18 04:19:01
【问题描述】:

我在 scala 中有一个日期列表,如下所示。

ListBuffer(2021-10-01, 2021-10-02, 2021-10-03, 2021-10-04)

我想将列表中的每个元素传递给下面的变量并获取计数。

val fctExistingDF = spark.read.table(existingTable).filter("event_date","date from the list")
fctExistingDF.count()

请告诉我如何实现这一目标。

【问题讨论】:

    标签: scala apache-spark apache-spark-sql isin


    【解决方案1】:

    你可以使用isin:

    import org.apache.spark.sql.functions.col
    
    val values = Seq("2021-10-01", "2021-10-02", "2021-10-03", "2021-10-04")
    spark.read.table(existingTable).filter(col("event_date").isin(values:_*)).count()
    

    【讨论】:

      猜你喜欢
      • 2021-10-17
      • 1970-01-01
      • 2017-05-23
      • 2013-12-25
      • 1970-01-01
      • 1970-01-01
      • 2022-01-02
      • 2018-10-12
      相关资源
      最近更新 更多