注册 登录
编程论坛 SQL Server论坛

[求助]求多表查询的语句

jockey 发布于 2007-05-29 11:52, 683 次点击
一B对多A:

A表结构:
ID,IDB,金额

B表结构:
ID,总额


A表纪录:
ID IDB 金额
1 4 50
2 4 30
3 3 90

B表纪录:
ID 总额
3 90
4 80

我想验证一下:B表中的每条纪录的总额是否=A表金额之和

B.总额=sum(A.金额) where B.ID=A.IDB
5 回复
#2
初学Delphi2007-05-29 12:33

不知道楼主是不是这个意思
select B.id ,B.总额,c.总金额 from B,(select IDB,sum(金额) as 总金额 from A group by IDB) c where B.ID=c.IDB and B.总额<>c.总金额



#3
jockey2007-05-29 13:11
哈哈,正是此意!多谢初学Delphi!
#4
jockey2007-05-29 13:30
如果还有个C表是不是应该这样了:(B=A+C)

select B.id,B.总额,h.c金额,d.d金额 from B,(select IDB,sum(金额) as c金额 from A group by IDB) h ,
(select IDB,sum(金额) as d金额 from C group by IDB) d where B.ID=h.IDB and B.ID=d.IDB and B.总额<>h.c金额+d.d金额
#5
初学Delphi2007-05-29 13:33

好象没什么错误,你运行一下看看?

#6
jockey2007-05-29 14:48
运行了,没错!再次感谢!
1