【发布时间】:2015-07-01 07:30:43
【问题描述】:
我想计算 Hive 表中的行数,同时计算单个查询中的子集(基于 WHERE 子句中的某些条件)。我在post 中遇到了 CTE,我认为它适用于非 Hive SQL。我研究了一下,发现 Hive 有 CTE。但是,当我尝试时,此表单在 Hive 中不起作用:
WITH MY_TABLE AS (
SELECT *
FROM orig_table
WHERE base_condition
)
SELECT
(SELECT COUNT(*) FROM MY_TABLE) AS total,
(SELECT COUNT(*) FROM MY_TABLE WHERE cond_1) AS subset_1,
...
(SELECT COUNT(*) FROM MY_TABLE WHERE cond_n) AS subset_n;
是否有人对 Hive 有解决方法或类似的工作想法?
【问题讨论】: