SQL数据库中删除一个表在另一个表中不存在的记录?
比如表A和B,根据字段ID来判断,如果A.ID在B中,不存在,则删除此条记录,我用以下语句来删除,速度很慢,有没有方法能快速删除?deletefromAwhereIDno...
比如表A和B,根据字段ID来判断,如果A.ID在B中,不存在,则删除此条记录,我用以下语句来删除,速度很慢,有没有方法能快速删除?
delete from A where ID not in
(select ID from B) 展开
delete from A where ID not in
(select ID from B) 展开
3个回答
展开全部
1. 采用not exists 执行速度快delete from T_AD where not exists (select 1 from T_AD_PLAY where T_AD.N_CODE =T_AD_PLAY.N_CODE ) 2. 采用not in 执行速度慢Delete From T_AD Where N_AD Not In(Select N_AD From T_AD_PLAY)
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
delete from A where not exists (select 1 from B where A.ID = b.ID)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询