以前更新一列,Sql语句常常这么写:
Update #table
set col = select ... form tb where...
我现在想对一个表中的二列进行更新,我把Sql语句写成这样,但是报错
UPDATE tmp_callin(TOperaNum,TOperaFCode)   
SELECT B.tmpOperaNum,A.ITEMCODE FROM YW_WORKRECORDTYPE A, #tmp_FWORKRECORD B   
WHERE A.ITEMCODE = B.tmpOperaCode 
哪位大虾能否给我示范一下,写一段代码,如何对表中二列同时进行更新,谢谢!

解决方案 »

  1.   

    INSERT tmp_callin(TOperaNum,TOperaFCode)  
    SELECT B.tmpOperaNum,A.ITEMCODE FROM YW_WORKRECORDTYPE A, #tmp_FWORKRECORD B  
    WHERE A.ITEMCODE = B.tmpOperaCode 
      

  2.   


    UPDATE B SET B.COL='',B.COL1=''
    SELECT B.tmpOperaNum,A.ITEMCODE FROM YW_WORKRECORDTYPE A, #tmp_FWORKRECORD B  
    WHERE A.ITEMCODE = B.tmpOperaCode 
      

  3.   


    declare @1 table(city varchar(20),id int)
    insert into @1
    select 'fdsa',213 union all
    select 'afd',32 union all
    select 'fads',32declare @2 table(city varchar(20),id int,relate varchar(30))
    insert into @2
    select 'afd',213,'a' union all
    select 'a',3,'b' union all
    select 'b',3,'c'declare @3 table(city varchar(20),nid int,relate varchar(30))
    insert into @3
    select 'adsd',213,'b'
    update @1 set city=a.city,id=b.nid from @2 a,@3 b where a.relate=b.relateselect * from @1city                 id
    -------------------- -----------
    a                    213
    a                    213
    a                    213(3 行受影响)类似的:
    update tmp_callin set TOperaNum=b.tmpOperaNum,TOperaFCode=A.ITEMCODE
    from YW_WORDRECORDTYPE A,#tmp_FWORDRECORD B
    WHERE A.ITEMCODE = B.tmpOperaCode