【问题标题】:IF/Case statement when using SparkSQL with Cassandra将 SparkSQL 与 Cassandra 一起使用时的 IF/Case 语句
【发布时间】:2016-04-08 05:25:00
【问题描述】:

在使用 Scala 从 Cassandra 选择到 Spark 时,我正在尝试转换数据。

在选择数据时,我想转换数据以根据值将计数放入特定的 count_* 列。

我找不到用于 Spark SQL 的 IF/CASE 语句。有什么想法吗?

val results = csc.sql("
    SELECT trip_sell_key, trip_veh_key, idle_stop_date, COUNT(*),
    SUM (case when idle_stop_duration >= 0  
    and idle_stop_duration < 5 then  1 else 0 end)
    from veh_trip"
)

【问题讨论】:

    标签: scala apache-spark cassandra


    【解决方案1】:

    我什至不确定您的 SQL 是否适用于 SparkSQL。不记得 SparkSQL 是否支持 case else 语句。

    另一点是COUNT(*)SUM(...) 是聚合函数,它们只能与您的语句中缺少的GROUP BY 子句一起使用

    【讨论】:

      猜你喜欢
      • 2011-06-09
      • 1970-01-01
      • 2022-12-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多