sql - 如何检查 HIVE 中 having 子句的顺序?

标签 sql hadoop hive

我希望能够编写一个查询,告诉我哪些数据组没有序列中的每个数字。

例如,我的 table 是这样的:

Columns:   sequence  group1
           0         ADM
           1         ADM
           0         GDM
           2         GDM
           3         GDM
           0         WJK

而且,我想知道 group1 中的哪些唯一值包含从 0 开始并计数的所有数字。因此,在这种情况下,ADMWJK 将被返回,但 GDM 不会。 GDM 不会,因为它从 0、2、3 开始并跳过 1。

我如何在 HIVE 中编写查询来告诉我列 group1 中的哪些唯一值依次包含所有整数?

最佳答案

SELECT group1
FROM
    TableName
GROUP BY
    group1
HAVING
    COUNT(*) = MAX(sequence) - MIN(sequence) + 1

如果基于 0 或正整数,这有效

关于sql - 如何检查 HIVE 中 having 子句的顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38982714/

相关文章:

php - 如何在 PHP 中使用计数?

hadoop - 配置单元输出最后包含这 2 个警告。如何抑制这 2 个警告

java - MapReduce 以编程方式获取当前作业 ID

sql - hive LIKE 运算符的特殊字符的完整列表

hadoop - 对大型动态数据集进行分析查询

hadoop - Hive 与 HBase 相比如何?

mysql - 根据最后插入的记录按时间间隔分组

sql - 什么是mysql索引?

php - SQL 查询未给出预期结果

python - 使用 Hadoop 的 Blender 静止图像渲染