我有3个表 CH_ReceiptMaster,CH_ReceiptDetail,CH_Department
在CH_ReceiptMaster 中有如下字段
ReceiptID ID,主键,自增
DepartmentID 相关部门ID在CH_ReceiptDetail 中有如下字段
DetailID ID,主键,自增
ReceiptID 主单据ID
PurchaseMoney 采购金额在CH_Department 中有如下字段
DepartmentID 自增主键ID
DepartmentName 部门名称我想求出每个部门的采购的汇总金额和部门
自己写的SQL语句 不能求和
select sum(i.PurchaseMoney) as PurchaseMoney ,i.DepartmentName from ch_receiptmaster m
left join
(select IsNull(SUM(d.PurchaseMoney), 0.00) as PurchaseMoney,m.ReceiptID,de.DepartmentName
FROM CH_ReceiptDetail d
Inner JOIN CH_ReceiptMaster m
ON d.ReceiptID = m.ReceiptID
inner join ch_Department de
on de.Departmentid =m.Departmentid
where m.BusinessTime between '2011-02-01 00:00:00' and '2011-03-01 00:00:00'
group by PurchaseMoney ,m.ReceiptID,de.DepartmentName)
i on m.receiptid=i.receiptid
where m.BusinessTime between '2011-02-01 00:00:00' and '2011-03-01 00:00:00'
group by PurchaseMoney,i.DepartmentName order by i.DepartmentName
请大侠指点指点
在CH_ReceiptMaster 中有如下字段
ReceiptID ID,主键,自增
DepartmentID 相关部门ID在CH_ReceiptDetail 中有如下字段
DetailID ID,主键,自增
ReceiptID 主单据ID
PurchaseMoney 采购金额在CH_Department 中有如下字段
DepartmentID 自增主键ID
DepartmentName 部门名称我想求出每个部门的采购的汇总金额和部门
自己写的SQL语句 不能求和
select sum(i.PurchaseMoney) as PurchaseMoney ,i.DepartmentName from ch_receiptmaster m
left join
(select IsNull(SUM(d.PurchaseMoney), 0.00) as PurchaseMoney,m.ReceiptID,de.DepartmentName
FROM CH_ReceiptDetail d
Inner JOIN CH_ReceiptMaster m
ON d.ReceiptID = m.ReceiptID
inner join ch_Department de
on de.Departmentid =m.Departmentid
where m.BusinessTime between '2011-02-01 00:00:00' and '2011-03-01 00:00:00'
group by PurchaseMoney ,m.ReceiptID,de.DepartmentName)
i on m.receiptid=i.receiptid
where m.BusinessTime between '2011-02-01 00:00:00' and '2011-03-01 00:00:00'
group by PurchaseMoney,i.DepartmentName order by i.DepartmentName
请大侠指点指点
解决方案 »
- T-SQL语句查询服务器内存,cpu,磁盘空间,磁盘IO以及每个库的大小
- 这条sql 语句如何加标点符号!
- 怎样知道结果集的记录数
- 提问:怎么用sql语句搜索一张表
- 程序已经运行一年多了,客户重装MS SQL2000服务器后有严重阻塞和死锁的情况,请高手指点下??
- 已有数据的表以前未加主键,现在想加如何处理?
- 一张表中根据时间段判断时间段是否重复
- XP系统的登陆密码会写到sql server 2000里的XP系统数据库表吗?
- SQL语句:列数不确定,要两个表对应列的比率
- 我写的一个存储过程,怎么执行速度比在查询分析器的慢很多呀?
- 关于sqlserver 2005与sqlce数据同步相关问题??
- 求视图修改,急
IsNull(SUM(d.PurchaseMoney), 0.00) as PurchaseMoney,
de.DepartmentName
FROM CH_ReceiptDetail d
Inner JOIN CH_ReceiptMaster m
ON d.ReceiptID = m.ReceiptID
inner join ch_Department de
on de.Departmentid =m.Departmentid
where m.BusinessTime between '2011-02-01 00:00:00' and '2011-03-01 00:00:00'
group by de.DepartmentName
select c.DepartmentName,sum(isnull(a.PurchaseMoney,0)) as PurchaseMoney,
from CH_ReceiptDetail a,CH_ReceiptMaster b,ch_Department c
where a.ReceiptID = b.ReceiptID
and a.Departmentid =c.Departmentid
and a.BusinessTime between '2011-02-01 00:00:00' and '2011-03-01 00:00:00'
group by c.DepartmentName
select m.DepartmentID,DepartmentName,sum(PurchaseMoney) from CH_ReceiptDetail as dt
left join CH_ReceiptMaster as m on dt.ReceiptID=m.ReceiptID
left join CH_Department as d on d.DepartmentID=m.DepartmentID
group by m.DepartmentID,DepartmentName
select m.DepartmentID,DepartmentName,sum(PurchaseMoney) from CH_ReceiptDetail as dt
left join CH_ReceiptMaster as m on dt.ReceiptID=m.ReceiptID
left join CH_Department as d on d.DepartmentID=m.DepartmentID
where m.BusinessTime between '2011-02-01 00:00:00' and '2011-03-01 00:00:00'
group by m.DepartmentID,DepartmentName