当我将显式排序顺序(ASC或DESC)与GROUP BY列表中的列名一起使用时,会对摘要输出产生什么影响?
在这种情况下,如果我们在GROUPBY列表中使用带有列名的显式排序顺序(ASC或DESC)以及“WITHROLLUP”修饰符,则由ROLLUP添加的摘要行仍会出现在它们根据其计算的行之后,无论排序。
我们知道默认排序顺序是递增的,因此在下面的示例中,如果我们不使用任何显式排序顺序,则输出将如下所示:
mysql> Select sr, SUM(Price) AS Price from ratelist Group by sr with rollup; +-----+-------+ | sr | Price | +-----+-------+ | 1 | 502 | | 2 | 630 | | 3 | 1005 | | 4 | 850 | | 5 | 250 | |NULL | 3237 | +-----+-------+ 6 rows in set (0.00 sec)
现在,在将排序顺序定义为DESC之后,我们将从上述相同查询中获取输出,如下所示:
mysql> Select sr, SUM(Price) AS Price from ratelist Group by sr DESC with rollup; +-----+-------+ | sr | Price | +-----+-------+ | 5 | 250 | | 4 | 850 | | 3 | 1005 | | 2 | 630 | | 1 | 502 | |NULL | 3237 | +-----+-------+ 6 rows in set (0.00 sec)
从输出中可以看出,尽管排序顺序已更改为降序,但汇总行还是出现在要计算汇总行的行之后。
热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短