请问 在Oracle中想删除条件在其他表中的数据,怎么做?
在SQL SERVER中有 DELETE AA FROM AA,BB WHERE AA.id=BB.id and BB.kbn = '1';但Oracle不支持;因为数据量大,不考虑Exists 和 In
在SQL SERVER中有 DELETE AA FROM AA,BB WHERE AA.id=BB.id and BB.kbn = '1';但Oracle不支持;因为数据量大,不考虑Exists 和 In
解决方案 »
- 求助关于tnsnames.ora配置后无法连接的问题
- oracle erp個性化設置問題
- new_students := total_students (:major.class_id, 'N')中的:major是什么意思?
- 簇中的关键字
- sql语句优化问题
- 创建表时 提示ORA-00984: 列在此处不允许
- 建数据库时字符集的问题
- 急 如长江发大水.达人进来指点点啊......3Q3Q3Q3Q
- 含有execute immediate 'insert into test001 values(1,''jd'')'的过程被调用时提示:insufficient privilege .
- merge操作的问题
- 如何将组合查询条件放到一个变量中呢?在线等!
- 插入空格
您好,我们是“2006中国杰出数据库工程师评选”活动组委会。
您的帖子已经被我们转载到本次评选官方网站的“专家在线答疑”区。
http://www.bestdba.cn/match_discussion.aspx在那里,进入本次评选终选的30位数据库工程师将与您展开积极的互动。他们会为您的问题提供满意的答案,此外,您还可以在“专家在线答疑”区提出新的问题并参与讨论。您的帖子位于:
http://www.bestdba.cn/match_discussion3.aspx?pointid=475&pointid2=1&pointid3=5&pcount=stc非常感谢您对本次活动的支持!
--------------------------------------------------------------
DECLAREBEGIN
LOOP
DELETE FROM AA
WHERE AA.ID = (SELECT ID
FROM BB
WHERE KBN = '1'
AND ID = AA.ID)
AND ROWNUM <= 10000;
COMMIT;
EXIT WHEN(SQL%ROWCOUNT = 0 OR SQL%ROWCOUNT < 10000);
END LOOP;
END;