delete from browlog where id in 
(
  select id from myarchive where timelimit +1 < sysdate and user_id =2
)

解决方案 »

  1.   

    delete  from browlog   
    where exists(select 1 from myarchive
    where  myarchive.id  =  browlog.resprec_id  
    and  myarchive.timelimit  <  sysdate -1 
    and  myarchive.user_id  =2 );
      

  2.   

    为什么在sybase里面可以, 在ORACLE 中不行呢??? 请老兄给予解答
      

  3.   

    delete from browlog
     where resprec_id in
           (select id
              from myarchive
             where myarchive.timelimit + 1 < sysdate and myarchive.user_id = 2)
      

  4.   

    exists效率比in高一些,尽量使用exists,推荐bzszp(www.bzszp.533.net)的
      

  5.   

    ORACLE不能一次删除两个表的数据。
      

  6.   

    为什么在sybase里面可以, 在ORACLE 中不行呢??? 请老兄给予解答
    ---
    sybase 与 sqlserver 一样,使用的是t-sql
    而oracle使用的是 pl/sql
      

  7.   

    ORACLE不能一次删除两个表的数据。
    ---
    看来你没有看懂楼主的语句。delete browlog from就是删除一个表,不是两个表。
      

  8.   

    oracle的语法有些区别的
    你的写法跟sql server的一样