当我们使用ROLLUP运算符时,为什么我们不能使用DISTINCT关键字?

时间:2016-09-17 02:16:58

标签: sql-server

我很困惑为什么在使用ROLLUP运算符时我们不能使用DISTINCT关键字?有原因还是仅仅是规范?

2 个答案:

答案 0 :(得分:1)

"选择不同的"如果查询涉及GROUP BY子句,则无用且冗余。

就其本质而言,GROUP BY子句必须生成唯一定义的行,因此行已经是唯一的"选择不同的"没有任何价值。

答案 1 :(得分:0)

乍一看,这似乎是一个合理的问题。但是,通常一个人不会将select distinct与聚合查询一起使用。因此,确实没有理由支持rollup select distinct,因为前者仅用于group by而后者几乎从不用。{/ p>