首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

關於SQL的兩個關聯表匯總問題解决办法

2012-02-22 
關於SQL的兩個關聯表匯總問題變動表單號日期數量OUT0203042005.5.62324OUT0203042005.5.61233OUT020405200

關於SQL的兩個關聯表匯總問題
變動表
單號                   日期             數量
OUT020304       2005.5.6       2324
OUT020304       2005.5.6       1233
OUT020405       2005.5.6       2622
OUT020405       2005.5.6       233  
OUT020405       2005.5.7       255
OUT020605       2005.5.7       256
...

上面按日期來匯總單號,應該怎麼寫呢?

[解决办法]
create table tab(單號 varchar(18),日期 datetime, 數量 int)
insert tab select 'OUT020304 ', '2005.5.6 ',2324
union all select 'OUT020304 ', '2005.5.6 ',1233
union all select 'OUT020405 ', '2005.5.6 ',2622
union all select 'OUT020405 ', '2005.5.6 ',233
union all select 'OUT020405 ', '2005.5.7 ',255
union all select 'OUT020605 ', '2005.5.7 ',256


select 單號 , 日期, sum(數量) 數量 from tab group by 單號 , 日期
[解决办法]
按月统计:
select 單號 ,时间=convert(varchar(7),日期,120),sum(數量) 數量
from 表名 group by 單號,convert(varchar(7),日期,120
[解决办法]
select 單號 ,时间=convert(varchar(7),日期,120),sum(數量) 數量
from 表名 group by 單號,convert(varchar(7),日期,120)--少一个 ') '

select select 單號 ,时间=max(日期)--显示结束日期
sum(數量) 數量
from 表名 where 日期 between '2005-05-06 00:00:00 ' and '2005-05-07 23:59:59 '


[解决办法]
select 日期,单号,sum(数量) from 变动表 group by 日期,单号

热点排行