Sql 是否可以根据配置单元中的常量列进行分组?
我正在对标准非聚合表列key1和key2运行一个配置单元查询,如下所示。但我将根据where条件向每个被union-ed的表添加一个常量类型列Sql 是否可以根据配置单元中的常量列进行分组?,sql,hive,hiveql,Sql,Hive,Hiveql,我正在对标准非聚合表列key1和key2运行一个配置单元查询,如下所示。但我将根据where条件向每个被union-ed的表添加一个常量类型列 CREATE TABLE IF NOT EXISTS T_FINAL AS SELECT DISTINCT union_tbles.key1 AS key1, union_tbles.key2 AS key2, union_tbles.cnt AS cnt, union_tbles.type AS type FROM ( SELECT key1 AS k
CREATE TABLE IF NOT EXISTS T_FINAL AS SELECT DISTINCT union_tbles.key1 AS key1, union_tbles.key2 AS key2, union_tbles.cnt AS cnt, union_tbles.type AS type FROM (
SELECT key1 AS key1, key2 AS key2, COUNT(val) AS cnt, 'x1' AS type FROM T_SUB1 WHERE key1 IN ('X1') GROUP BY key1, key2
UNION ALL
SELECT key1 AS key1, key2 AS key2, COUNT(val) AS cnt, 'x2' AS type FROM T_SUB1 WHERE key1 IN ('X2') GROUP BY key1, key2
) union_tbles
是否可以按以下列分组添加常量列类型asa?
当我试图在group by中添加常量列类型时,配置单元中出现无效列别名错误。有没有关于如何在蜂箱里做的建议
CREATE TABLE IF NOT EXISTS T_FINAL AS SELECT DISTINCT union_tbles.key1 AS key1, union_tbles.key2 AS key2, union_tbles.cnt AS cnt, union_tbles.type AS type FROM (
SELECT key1 AS key1, key2 AS key2, COUNT(val) AS cnt, 'x1' AS type FROM T_SUB1 WHERE key1 IN ('X1') GROUP BY key1, key2, type
UNION ALL
SELECT key1 AS key1, key2 AS key2, COUNT(val) AS cnt, 'x2' AS type FROM T_SUB1 WHERE key1 IN ('X2') GROUP BY key1, key2, type
) union_tbles
配置单元无法识别GROUP BY子句中的别名。
无论如何,绝对不需要按常量分组。
常量不必在GROUP BY子句中才能被选中
with t as (select 1 as x)
select x
,count(*)
,1+1
,'Hello'
,current_date()
from t
group by x
“SELECT DISTINCT”?为什么“UNION ALL”放在首位?我正在运行一系列UNION的联接。我以两种方式运行它-选择DISTINCT(…UNION ALL…UNION ALL…等)和选择FROM(…UNION DISTINCT…UNION DISTINCT)。第一种方式是15个工作岗位,第二种方式是25个。仅仅增加工会就显著增加了就业机会。每个作业都使用9068个绘图器和1009个还原器。因此,所花费的时间过高。所以我想减少工作的数量。但是你不需要使用
独特的
(groupby之后不能有重复项)也不需要联合所有的
。可以使用单个选择来编写。你正试图从基础上调整写得不好的内容<代码>选择不同于
?是不是少了一些栏目?
+---+-----+-----+-------+------------+
| x | _c1 | _c2 | _c3 | _c4 |
+---+-----+-----+-------+------------+
| 1 | 1 | 2 | Hello | 2017-04-17 |
+---+-----+-----+-------+------------+