2

原始查询:

SELECT CAST(cust_mart.acct_identifier AS STRING) as f0 
FROM   cts_work.cust_xref cust_mart 
GROUP BY cust_mart.f0;      

我可以用下面的查询替换上面的查询吗:

 SELECT DISTINCT CAST(cust_mart.acct_identifier AS STRING) as f0 
 FROM cts_work.cust_xref cust_mart;

原因: 没有聚合所以 group-by 没有意义,但仍然确认我的方法我正在使用 TEZ 引擎在 hive 上运行此查询

4

1 回答 1

0

使用EXPLAIN命令并比较两个查询计划以检查差异。这些查询应该生成相同的计划。Group by将与这种情况下的工作方式相同distinctDISTINCT也是一个聚合,只是同一个group by的另一种说法。

于 2019-04-03T11:52:20.073 回答