主从表数据比较,多题
有一个主表ID ,AMOUNT 一个子表 ID ,MASTERID,AMOUNT
一个主表ID,对应多个子表,ID = MASTERID
1.现在想得到:子表的AMOUNT的合计 不等于 主表的AMOUNT.(PS:应该是等于的).
2.得到 :主表中有的ID,在子表中无该ID(MASTERID)的主表记录.
3.分不够可加
问题点数:50、回复次数:4Top
1 楼zhaoanle(zhao)回复于 2006-03-13 15:51:54 得分 10
--1.
select MASTERID,sum(AMOUNT) AS 'AMOUNT' from 子表 group by MASTERID
--2.
SELECT * FROM 主表 WHERE ID NOT IN (SELECT MASTERID FROM 子表)Top
2 楼libin_ftsafe(子陌红尘:TS for Banking Card)回复于 2006-03-13 15:51:54 得分 40
1、
select a.* from 主表 a where a.AMOUNT!=isnull((select sum() from 子表 where MASTERID=a.ID),0)
2、
select a.* from 主表 a where not exists(select 1 from 子表 where MASTERID=a.ID)Top
3 楼libin_ftsafe(子陌红尘:TS for Banking Card)回复于 2006-03-13 15:54:26 得分 0
1、
select a.* from 主表 a where a.AMOUNT!=isnull((select sum(AMOUNT) from 子表 where MASTERID=a.ID),0)
2、
select a.* from 主表 a where not exists(select 1 from 子表 where MASTERID=a.ID)
Top
4 楼wangzhenxing(fireice)回复于 2006-03-13 15:57:14 得分 0
谢谢楼上兄台,测试通过马上揭贴Top




