在使用 ROLLUP 修飾符時,可以使用 MySQL ORDER BY 子句對結果進行排序嗎?
實際上,ROLLUP 和 ORDER BY 在 MySQL 中是互斥的,因此最好不要在查詢中同時使用它們。但如果我們仍將 ROLLUP 用於 ORDER BY,主要劣勢是彙總行連同它們計算出的行一同進行排序。還要注意,排序順序將決定彙總行的位置。
彙總行將位於升序的開頭和降序的結尾。檢視以下示例以更加清楚地理解它 −
mysql> Select * from (Select sr, SUM(PRICE) AS PRICE from ratelist GROUP BY sr WITH ROLLUP) AS Price ORDER BY Sr DESC; +------+-------+ | sr | PRICE | +------+-------+ | 5 | 250 | | 4 | 850 | | 3 | 1005 | | 2 | 630 | | 1 | 502 | | NULL | 3237 | +------+-------+ 6 rows in set (0.00 sec) mysql> Select * from (Select sr, SUM(PRICE) AS PRICE from ratelist GROUP BY sr WITH ROLLUP) AS Price ORDER BY Sr ASC; +------+-------+ | sr | PRICE | +------+-------+ | NULL | 3237 | | 1 | 502 | | 2 | 630 | | 3 | 1005 | | 4 | 850 | | 5 | 250 | +------+-------+ 6 rows in set (0.01 sec)
廣告
資料結構
網路
關係型資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP