有2张表 ANGV 和 EDI, 各有20万条数据。现在要从EDI提取数据到ANGV我写的update语句, 如下
UPDATE ANGV, EDI SET ANGV.WERT = EDI.WERT WHERE ANGV.CODE = EDI.EXID;UPDATE ANGV, EDI SET ANGV.FROM = EDI.FROM WHERE ANGV.CODE = EDI.EXID;UPDATE ANGV, EDI SET ANGV.BLK = EDI.BLK WHERE ANGV.CODE = EDI.EXID;UPDATE ANGV, EDI SET ANGV.RGZ = EDI.RGZ WHERE ANGV.CODE = EDI.EXID;UPDATE ANGV, EDI SET ANGV.BGEBIET = EDI.BGEBIET WHERE ANGV.CODE = EDI.EXID;UPDATE ANGV, EDI SET ANGV.Bfrom = EDI.Bfrom WHERE ANGV.CODE = EDI.EXID;UPDATE ANGV, EDI SET ANGV.Bto = EDI.Bto WHERE ANGV.CODE = EDI.EXID;
问题是这样update的速度很慢。希望高手能给个方法。 多谢!!

解决方案 »

  1.   

    还有多个update语句能不能合并成一条update的语句。
      

  2.   

    UPDATE ANGV, EDI 
    SET ANGV.Bto = EDI.Bto,ANGV.Bfrom = EDI.Bfrom ,ANGV.BGEBIET = EDI.BGEBIET 
    where 
      

  3.   

    是不是包括所有属性啊,如果是,不如新建表ANGV,以EDI的内容复制到ANGV里,不知这样行不行呢?呵呵...
      

  4.   

    UPDATE ANGV, EDI 
    SET ANGV.WERT = EDI.WERT,
    ANGV.FROM = EDI.FROM,
    ANGV.BLK = EDI.BLK,
    ANGV.RGZ = EDI.RGZ,
    ANGV.BGEBIET = EDI.BGEBIET,
    ANGV.Bfrom = EDI.Bfrom,
    ANGV.Bto = EDI.Bto
    WHERE ANGV.CODE = EDI.EXID;在其中一表的EXID或者CODE添加索引。
      

  5.   

    老大, 在其中一表的EXID或者CODE添加索引, 这步怎么做啊?? 谢谢了!
      

  6.   

    CREATE INDEX index_name ON ANGV(CODE);