如果sql代码如下所示呢?
Proc SQL; SELECT DISTINCT ID,SUM(AMOUNT) AS M,SUM(NO) AS CNT FROM CUSTOMER_LIST GROUP BY ID ORDER BY CNT DESC; QUIT;
使用 DISTINCT 与 GROUP BY . 使用此组合或 DISTINCT 只是一个多余的词?谢谢~
DISTINCT
GROUP BY
58wvjzkj1#
使用 DISTINCT 与 GROUP BY . 使用此组合时是否会出现任何可能的错误?或者 DISTINCT 只是一个多余的词?这不会出错,但那只是不必要的冗余。 GROUP BY ID 保证每个 ID 将只出现在结果集中的一行上。添加没有好处 DISTINCT 这里-这使得查询的意图更难理解。另一方面,有些情况下 DISTINCT 没有 GROUP BY :通常当您要对一组列执行重复数据消除,但不需要使用聚合函数时( SUM() , COUNT() ...).
GROUP BY ID
ID
SUM()
COUNT()
7tofc5zh2#
SELECT ID,SUM(AMOUNT) AS M,SUM(NO) AS CNT FROM CUSTOMER_LIST GROUP BY ID ORDER BY CNT DESC;
我们已经按id分组,所以不需要不同的id
2条答案
按热度按时间58wvjzkj1#
使用
DISTINCT
与GROUP BY
. 使用此组合时是否会出现任何可能的错误?或者DISTINCT
只是一个多余的词?这不会出错,但那只是不必要的冗余。
GROUP BY ID
保证每个ID
将只出现在结果集中的一行上。添加没有好处DISTINCT
这里-这使得查询的意图更难理解。另一方面,有些情况下
DISTINCT
没有GROUP BY
:通常当您要对一组列执行重复数据消除,但不需要使用聚合函数时(SUM()
,COUNT()
...).7tofc5zh2#
我们已经按id分组,所以不需要不同的id