LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

SQL 數(shù)據(jù)增加小計及合計行,求sql行合計列合計

Ccoffee
2015年12月24日 10:10 本文熱度 7377
表  
id 編號
time 時間
bm 部門
fy 費用
數(shù)據(jù)
id time bm fy
1 2010-1-2 市場部 200
2 2010-1-5 行政部 500
4 2010-1-5 市場部 500
3 2010-3-5 行政部 400
5 2010-1-5 行政部 400
現(xiàn)在我要統(tǒng)計出結(jié)果
月份 市場部 行政部 合計
1月份 700 900 1600
。
。
。  
12月份 500 400 900
合計 1200 1300 2500
------回答---------
------回答(20分)---------
SQL code
if not object_id(''tb'') is null drop table tb Go Create table tb([id] int,[time] Datetime,[bm] nvarchar(3),[fy] int) Insert tb select 1,''2010-1-2'',N''市場部'',200 union all select 2,''2010-1-5'',N''行政部'',500 union all select 4,''2010-1-5'',N''市場部'',500 union all select 3,''2010-3-5'',N''行政部'',400 union all select 5,''2010-1-5'',N''行政部'',400 Go select ltrim(month(time))+''月份''月份, sum(case when bm=''市場部'' then fy else 0 end)市場部, sum(case when bm=''行政部'' then fy else 0 end)行政部, sum(fy)合計 from tb group by ltrim(month(time))+''月份'' union all select N''合計'', sum(case when bm=''市場部'' then fy else 0 end), sum(case when bm=''行政部'' then fy else 0 end), sum(fy) from tb /* 月份 市場部 行政部 合計 ---------------- ----------- ----------- ----------- 1月份 0 900 1600 3月份 0 400 400 合計 0 1300 2000 */
------回答(20分)---------
漏個合計
SQL code
--> 測試數(shù)據(jù): #tb if object_id(''tempdb.dbo.#tb'') is not null drop table #tb go create table #tb (id int,time datetime,bm varchar(6),fy int) insert into #tb select 1,''2010-1-2'',''市場部'',200 union all select 2,''2010-1-5'',''行政部'',500 union all select 4,''2010-1-5'',''市場部'',500 union all select 3,''2010-3-5'',''行政部'',400 union all select 5,''2010-1-5'',''行政部'',400 select [月份]=isnull(ltrim(number)+''月份'',''合計''), [行政部]=sum(case when bm=''行政部'' then fy else 0 end), [市場部]=sum(case when bm=''市場部'' then fy else 0 end), [合計]=sum(isnull(fy,0)) from #tb a right join master..spt_values s on month(time)=number where type=''p'' and number between 1 and 12 group by ltrim(number)+''月份'' with rollup order by cast(replace(replace(isnull(ltrim(number)+''月份'',''合計''),''合計'',''13月份''),''月份'','''') as int) 月份 行政部 市場部 合計 ---------------- ----------- ----------- ----------- 1月份 900 700 1600 2月份 0 0 0 3月份 400 0 400 4月份 0 0 0 5月份 0 0 0 6月份 0 0 0 7月份 0 0 0 8月份 0 0 0 9月份 0 0 0 10月份 0 0 0 11月份 0 0 0 12月份 0 0 0 合計 1300 700 2000 (13 行受影響)

------回答---------

------回答(20分)---------

SQL code
if not object_id(''tb'') is null drop table tb Go Create table tb([id] int,[time] Datetime,[bm] nvarchar(3),[fy] int) Insert tb select 1,''2010-1-2'',N''市場部'',200 union all select 2,''2010-1-5'',N''行政部'',500 union all select 4,''2010-1-5'',N''市場部'',500 union all select 3,''2010-3-5'',N''行政部'',400 union all select 5,''2010-1-5'',N''行政部'',400 Go select ltrim(month(time))+''月份''月份, sum(case when bm=''市場部'' then fy else 0 end)市場部, sum(case when bm=''行政部'' then fy else 0 end)行政部, sum(fy)合計 from tb group by ltrim(month(time))+''月份'' union all select N''合計'', sum(case when bm=''市場部'' then fy else 0 end), sum(case when bm=''行政部'' then fy else 0 end), sum(fy) from tb /* 月份 市場部 行政部 合計 ---------------- ----------- ----------- ----------- 1月份 0 900 1600 3月份 0 400 400 合計 0 1300 2000 */
------回答(20分)---------


漏個合計
SQL code
--> 測試數(shù)據(jù): #tb if object_id(''tempdb.dbo.#tb'') is not null drop table #tb go create table #tb (id int,time datetime,bm varchar(6),fy int) insert into #tb select 1,''2010-1-2'',''市場部'',200 union all select 2,''2010-1-5'',''行政部'',500 union all select 4,''2010-1-5'',''市場部'',500 union all select 3,''2010-3-5'',''行政部'',400 union all select 5,''2010-1-5'',''行政部'',400 select [月份]=isnull(ltrim(number)+''月份'',''合計''), [行政部]=sum(case when bm=''行政部'' then fy else 0 end), [市場部]=sum(case when bm=''市場部'' then fy else 0 end), [合計]=sum(isnull(fy,0)) from #tb a right join master..spt_values s on month(time)=number where type=''p'' and number between 1 and 12 group by ltrim(number)+''月份'' with rollup order by cast(replace(replace(isnull(ltrim(number)+''月份'',''合計''),''合計'',''13月份''),''月份'','''') as int) 月份 行政部 市場部 合計 ---------------- ----------- ----------- ----------- 1月份 900 700 1600 2月份 0 0 0 3月份 400 0 400 4月份 0 0 0 5月份 0 0 0 6月份 0 0 0 7月份 0 0 0 8月份 0 0 0 9月份 0 0 0 10月份 0 0 0 11月份 0 0 0 12月份 0 0 0 合計 1300 700 2000 (13 行受影響)

該文章在 2015/12/24 10:12:04 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務費用、相關(guān)報表等業(yè)務管理,結(jié)合碼頭的業(yè)務特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
综合在线精品视频专区 | 亚洲精品国产手机 | 亚洲欧美中文字幕在线一区91 | 伊人久久婷婷综合五月97色 | 日本在线a一区视频 | 一本国产在线视频 |