select c.id from t_seae a,t_name c where  c.id = a.id and c.status = '考试' and a.time is not null and a.time = (select max(b.time) from t_seae b where a.id=b.id   )  ;这条 SQL  已经成功    得到了 我所要的ID    现需要   UPDATE t_name
           SET t_name.status = '放假'
         WHERE t_name.id =   ?  ////// 应该是 我前面那个SQL的结果求助  ?那里  我应该怎么写  谢谢了。

解决方案 »

  1.   

    UPDATE t_name t1 
               SET t1.t_name.status =  '放假 ' 
             WHERE exists
    (select 'a' from (select c.id from t_seae a,t_name c where  c.id = a.id and c.status =  '考试 ' and a.time is not null and a.time = (select max(b.time) from t_seae b where a.id=b.id   ) ) t2 where t1.id=t2.id);  
    试试看。
      

  2.   

    加个()放在update的=后面不就行了吗
      

  3.   

    kinglht    的是好用的  谢谢了