SELECT id, username, id_Num FROM users WHERE id>100 UNION ALL SELECT '合計', count(*), null FROM users WHERE id >100 ORDER BY id_Num DESC
分開來看:
第一段:
SELECT
id,
username,
id_Num
FROM users
WHERE id>100
第二段:
SELECT
'合計',
null,
count(*)
FROM users
WHERE id >100
兩段具有相同的列數,並且有相同的數據類型。
那么,就可以用UNION ALL 組合起來。
結果是以第一個查詢的結構,增加了第二個查詢的數據。
注意:
where的條件應該保持一致,否則你顯示的數據和統計的基准不同,那就不准了。
order by 只能在組合完成以后再寫一遍,因為UNION ALL以后,是把兩個查詢結果組合成一個查詢結果了,只能ORDER BY一次。
為了coutn的結果不影響排序,最好把count寫在不排序的列。