update table1 set field1=10  where table1.fieldkey=table2.fieldkey

解决方案 »

  1.   

    update  table1  set  field1=10  
    where  exists 
    (select 1 from table2 
    where table1.fieldkey=table2.fieldkey);
     
      

  2.   

    select 1 from table2 
    where table1.fieldkey=table2.fieldkey  这句话是什么意思,其中select后的是数字还是字母。
    我执行后结果没检测,不过好象速度比在SQL中的慢,能不能再快点
      

  3.   

    update  table1  set  field1=10  
    where table1.fieldkey in
     (select distinct table2.fieldkey from table2 )
      

  4.   

    to  bzszp(www.bzszp.533.net)好象你语句的执行结果,只要是table1中有和table2一样的fieldkey,就会将table1中所有的field1置10
      

  5.   

    试试外连接:update table1 set field1=10  where table1.fieldkey=table2.fieldkey(+)
      

  6.   

    update table1 set field1=10 from (
    (select table2.fieldkey from table2 where table1.fieldkey=table2.fieldkey )update  table1  set  field1=10  
    where  exists 
    (select 1 from table2 where table1.fieldkey=table2.fieldkey)