请帮我看这条SQL语句,什么地方不对啊!

qhf503 2003-09-12 08:02:38
select D.仓库号,D.账本号,isnull(count(B.入库单数),0) 入库单数,isnull(sum(B.入库金额),0) 入库金额 from D
left join (select 物资编码,count(入库单数) 入库单数,sum(入库金额) 入库金额 from B group by 物资编码) B on D.物资编码=B.物资编码 group by D.仓库号,D.账本号

我想得到的结果是,统计有多少的入库单,入库数量,入库金额,可是得到的结果只有入库数量,与入库金额是对的,而入库单数不对,而且不是0就是1

如表
B
物资编码 入库数量 入库金额
01-01-001 1000 1000
01-02-002 1 1
01-01-0001 1000 1000

D表

物资编码 仓库号 账本号
01-01-001 01 01
01-02-002 01 02
02-01-001 02 01
它应该得到的是:
仓库号 账本号 入库单数 入库数量 入库金额
01 01 2 2000 2000
01 02 1 1 1
02 01 0 0 0
而它得到是
仓库号 账本号 入库单数 入库数量 入库金额
01 01 1 2000 2000
01 02 1 1 1
02 01 0 0 0

即得到的入库单数不对

...全文
40 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
qhf503 2003-09-19
  • 打赏
  • 举报
回复

原来应该是这样:
select D.仓库号,D.账本号,isnull(sum(B.入库单数),0) 入库单数,isnull(sum(B.入库金额),0) 入库金额 from D
left join (select 物资编码,count(入库单数) 入库单数,sum(入库金额) 入库金额 from B group by 物资编码) B on D.物资编码=B.物资编码 group by D.仓库号,D.账本号

不过分都也给大家了
maoyesky 2003-09-12
  • 打赏
  • 举报
回复
select D.仓库号,D.账本号,count(B.入库數量) 入库单数,isnull(sum(B.入库數量),0) 入库數量,isnull(sum(B.入库金额),0) 入库金额 from D
left join B on D.物资编码=B.物资编码 group by D.仓库号,D.账本号
maoyesky 2003-09-12
  • 打赏
  • 举报
回复
select D.仓库号,D.账本号,count(B.入库单数) 入库单数,isnull(sum(B.入库數量),0) 入库數量,isnull(sum(B.入库金额),0) 入库金额 from D
left join B on D.物资编码=B.物资编码 group by D.仓库号,D.账本号
happydreamer 2003-09-12
  • 打赏
  • 举报
回复
看你的要求

B 应该这样吧
物资编码 入库数量 入库金额
01-01-001 1000 1000
01-02-002 1 1
01-01-001 1000 1000


select D.仓库号,D.账本号,isnull(count(B.入库单数),0) 入库单数,isnull(sum(B.入库金额),0) 入库金额 from D
left join (select 物资编码,count(物资编码) 入库单数,
sum(入库金额) 入库金额 from B group by 物资编码) B on D.物资编码=B.物资编码 group by D.仓库号,D.账本号
happydreamer 2003-09-12
  • 打赏
  • 举报
回复
看你的要求

B 应该这样吧
物资编码 入库数量 入库金额
01-01-001 1000 1000
01-02-002 1 1
01-01-001 1000 1000


select D.仓库号,D.账本号,isnull(count(B.入库单数),0) 入库单数,isnull(sum(B.入库金额),0) 入库金额 from D
left join (select 物资编码,count(物资编码) 入库单数,
sum(入库金额) 入库金额 from B group by 物资编码) B on D.物资编码=B.物资编码 group by D.仓库号,D.账本号
dxy207 2003-09-12
  • 打赏
  • 举报
回复
1、B表中没有入库单数的字段?
2、仓库号01和账本号01本来就只有一个入库单啊?
zhbname 2003-09-12
  • 打赏
  • 举报
回复
表B的物資編碼是不是有誤.
伍子V5 2003-09-12
  • 打赏
  • 举报
回复
select D.仓库号,D.账本号,isnull(sum(B.入库单数),0) 入库单数,isnull(sum(B.入库金额),0) 入库金额 from D
left join (select 物资编码,count(入库单数) 入库单数,sum(入库金额) 入库金额 from B group by 物资编码) B on D.物资编码=B.物资编码 group by D.仓库号,D.账本号

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧