delete a where exists
 (select * from a,b where a.name=b.name and a.card_id=b.card_id);

解决方案 »

  1.   

    或者
    delete a where a.name in 
    (select a.name from a,b where a.name=b.name and a.card_id=b.card_id);
      

  2.   

    delete from A where where A.name=B.name and A.card_id=B.card_id
      

  3.   

    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不一样的值
      

  4.   

    delete from A where rowid in (select rowid from A,B where A.name=B.name and A.card_id=B.card_id)
      

  5.   

    delete from A where rowid in (select A.rowid from A,B where A.name=B.name and A.card_id=B.card_id)
      

  6.   

    非常感谢 sanoul(垃圾) ,非常感谢!!!