Heim  >  Artikel  >  Datenbank  >  Ist es bei Verwendung des ROLLUP-Modifikators möglich, die MySQL ORDER BY-Klausel zum Sortieren der Ergebnisse zu verwenden?

Ist es bei Verwendung des ROLLUP-Modifikators möglich, die MySQL ORDER BY-Klausel zum Sortieren der Ergebnisse zu verwenden?

WBOY
WBOYnach vorne
2023-08-26 19:01:18807Durchsuche

使用 ROLLUP 修饰符时,是否可以使用 MySQL ORDER BY 子句对结果进行排序?

Tatsächlich schließen sich ROLLUP und ORDER BY in MySQL gegenseitig aus, daher ist die Verwendung beider in einer Abfrage keine gute Vorgehensweise. Wenn wir jedoch ROLLUP in ORDER BY verwenden, besteht der Hauptnachteil darin, dass die Zusammenfassungszeilen zusammen mit den Zeilen, anhand derer sie berechnet werden, sortiert werden. Beachten Sie auch, dass die Sortierreihenfolge die Position der Zusammenfassungszeilen bestimmt.

Die Zusammenfassungszeilen werden am Anfang in aufsteigender Reihenfolge und am Ende in absteigender Reihenfolge angezeigt. Bitte betrachten Sie das folgende Beispiel, um es besser zu verstehen -

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)

Das obige ist der detaillierte Inhalt vonIst es bei Verwendung des ROLLUP-Modifikators möglich, die MySQL ORDER BY-Klausel zum Sortieren der Ergebnisse zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen