我从一个BOM表中得到了下面的一个记录集,如何把这些记录用一条SQL语句删除?
我从一个BOM表中得到了下面的一个记录集,如何把这些记录用一条SQL语句删除?
select top 1 1 from
(select xxid,fmerchid,zmerchid from merch_bom where fmerchid='A') a,
(select xxid,fmerchid,zmerchid from merch_bom where fmerchid='B') b
where a.xxid=b.xxid and a.fmerchid=b.fmerchid and a.zmerchid=b.zmerchid
问题点数:50、回复次数:6Top
1 楼zheninchangjiang(徐若涵)回复于 2004-08-03 13:46:24 得分 5
得到的只是 1,有什么用Top
2 楼pbsql(风云)回复于 2004-08-03 13:54:36 得分 35
delete from merch_bom where exists
(select * from merch_bom c,
(
select top 1 * from
(select xxid,fmerchid,zmerchid from merch_bom where fmerchid='A') a,
(select xxid,fmerchid,zmerchid from merch_bom where fmerchid='B') b
where a.xxid=b.xxid and a.fmerchid=b.fmerchid and a.zmerchid=b.zmerchid
) d
where c.xxid=d.xxid and c.fmerchid=d.fmerchid and c.zmerchid=d.zmerchid)Top
3 楼gen2(踏雪观月)回复于 2004-08-03 16:05:44 得分 0
是:
select xxid,fmerchid,zmerchid from
(select xxid,fmerchid,zmerchid from merch_bom where fmerchid='A') a,
(select xxid,fmerchid,zmerchid from merch_bom where fmerchid='B') b
where a.xxid=b.xxid and a.fmerchid=b.fmerchid and a.zmerchid=b.zmerchid
风云的意思是正确的,不过不知有没有效率更高一点的!Top
4 楼lym51(老玉米)回复于 2004-08-03 17:29:36 得分 5
5 楼gen2(踏雪观月)回复于 2004-08-03 18:30:27 得分 0
呵呵,已做好,谢谢!
我忘记这样的格式了
delete tbl1
from tbl1 a,tbl2 b
where....Top
6 楼walkonthesky(★★★★★)回复于 2004-08-04 10:06:29 得分 5
好多做法啊
delete from merch_bom where xxid in (
select xxid from
(select xxid,fmerchid,zmerchid from merch_bom where fmerchid='A') a,
(select xxid,fmerchid,zmerchid from merch_bom where fmerchid='B') b
where a.xxid=b.xxid and a.fmerchid=b.fmerchid and a.zmerchid=b.zmerchid
)
就挺简练的
Top




