【问题标题】:Conditional GROUP BY clause in Hive QLHive QL 中的条件 GROUP BY 子句
【发布时间】:2014-11-04 18:12:06
【问题描述】:

我正在尝试在 Hive QL 脚本中参数化 GROUP BY 子句。

SELECT  COUNT(*) AS sales, country, state, city
FROM    testdb.data
WHERE
    PRICE > 5

GROUP BY
    IF (TRUE,
       (country, state, city),
       (country, state)
    )

如何实现这样的查询?

【问题讨论】:

    标签: hadoop mapreduce hive cloudera hiveql


    【解决方案1】:

    我曾尝试在 GROUP BY 及其作品中使用 CASE 语句。 您可能想要验证查询的结果。 如果您可以将您的条件转换为 case 语句,则此查询可以工作。

    SELECT * 
    FROM testdb.data
    WHERE price > 5
    GROUP BY country, state
     CASE <cond>
      WHEN <val> THEN city
     END ;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-06
      • 1970-01-01
      • 2021-10-07
      • 1970-01-01
      • 1970-01-01
      • 2012-04-20
      • 1970-01-01
      相关资源
      最近更新 更多