表的初始資料:
使用rollup進行彙總之後的資料:
可以改寫為:
使用group by實現roll up
[sql]view plain
copy
select
ta.first_name,
sum(ta.salary)
assalary
from
t_test1 ta
group
byta.first_name
union
allselect
'total'
, sum
(tb.salary)
assalary
from
t_test1 tb
用多列rollup操作
使用group by代替實現
[sql]view plain
copy
select
tt.first_name, tt.manager_id,
sum(tt.salary)
from
t_test2 tt
group
bytt.first_name, tt.manager_id
union
allselect
tt.first_name,
null
, sum
(tt.salary)
from
t_test2 tt
group
bytt.first_name
union
allselect
null
, null
, sum
(tt.salary)
from
t_test2 tt
grouping的作用
如果顯示「1」表示grouping函式對應的列(例如job欄位)是由於rollup函式所產生的空值對應的資訊,即對此列進行彙總計算後的結果。
如果顯示「0」表示此行對應的這列參未與rollup函式分組彙總活動
。
GROUP分組函式之ROLLUP
rollup函式的使用 案例1需求 統計每個部門每個職位的薪水和 統計每個部門所有職位的薪水小計 統計所有部門所有職位的薪水合計 需要顯示部門名 職位名和累加後的薪水 需求1 select d.dname,e.job,sum e.sal sum sal from dept d,emp e where...
rollup 和rollup 的區別
引用 使用裡面的資料進行查詢來區別rollup 和rollup 的使用。select f workarea,f line,sum f pagesnumber sum pagesnumbers from t testcount group by rollup f workarea,f line 返回結...
sql小計彙總 rollup用法例項分析
這裡介紹sql server2005裡面的乙個使用例項 create table tb province nvarchar 10 city nvarchar 10 score int insert tb select 陝西 西安 3union allselect 陝西 安康 4union allse...