oracle多表查询,求救,在线等待!!!

liangyiqing 2003-11-13 05:31:14
有两个表,表结构一模一样的两个表,都有两个字段name,card_id,里面数据不同,我想删除其中一个表中的(另外一个表里也有的相同的)数据,该怎么办?也就是说如果A表和B表中都有m这条数据,我需要把A表中的m数据删除,该怎么办?
...全文
64 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
liangyiqing 2003-11-13
  • 打赏
  • 举报
回复
非常感谢 sanoul(垃圾) ,非常感谢!!!
sanoul 2003-11-13
  • 打赏
  • 举报
回复
delete from A where rowid in (select A.rowid from A,B where A.name=B.name and A.card_id=B.card_id)

sanoul 2003-11-13
  • 打赏
  • 举报
回复
delete from A where rowid in (select rowid from A,B where A.name=B.name and A.card_id=B.card_id)
liangyiqing 2003-11-13
  • 打赏
  • 举报
回复
to fuhai(海之魂):
delete from A where A.name=B.name and A.card_id=B.card_id
这个语句在oracle里面执行不了!

to podded(阿朱):
delete a where a.name in
(select a.name from a,b where a.name=b.name and a.card_id=b.card_id);
这个语句中,如果name字段值不是唯一的,就会误删很多name一样,但card_id不一样的值
fuhai 2003-11-13
  • 打赏
  • 举报
回复
delete from A where where A.name=B.name and A.card_id=B.card_id
podded 2003-11-13
  • 打赏
  • 举报
回复
或者
delete a where a.name in
(select a.name from a,b where a.name=b.name and a.card_id=b.card_id);
podded 2003-11-13
  • 打赏
  • 举报
回复
delete a where exists
(select * from a,b where a.name=b.name and a.card_id=b.card_id);

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧