如果我们在 GROUP BY 列表中对列名使用显式排序顺序(ASC 或 DESC)以及“WITH ROLLUP”修饰符,则由 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)
从输出中可以看出,尽管排序顺序更改为降序,但汇总行出现在计算它们的行之后。
以上是当我对 GROUP BY 列表中的列名以及'WITH ROLLUP”修饰符使用显式排序顺序(ASC 或 DESC)时,会对摘要输出产生什么影响?的详细内容。更多信息请关注PHP中文网其他相关文章!