Sebenarnya ROLLUP dan ORDER BY adalah saling eksklusif dalam MySQL, jadi menggunakan kedua-duanya dalam pertanyaan bukanlah amalan yang baik. Walau bagaimanapun, jika kita menggunakan ROLLUP dalam ORDER BY, kelemahan utama ialah baris ringkasan akan diisih bersama-sama dengan baris yang dikira. Perlu diingatkan juga bahawa susunan isihan akan menentukan kedudukan baris ringkasan.
Baris ringkasan akan berada di permulaan dalam tertib menaik dan di akhir dalam tertib menurun. Sila pertimbangkan contoh berikut untuk memahaminya dengan lebih jelas -
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)
Atas ialah kandungan terperinci Apabila menggunakan pengubah suai ROLLUP, adakah mungkin untuk menggunakan klausa MySQL ORDER BY untuk mengisih keputusan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!