如下图,图一中的表格
根据jyls字段进行区分,然后将ywlxbm=xxyw001的lzjg字段的值插入到ywlxbm=xxyw005的kpdxzh字段中
图一中我写的SQL只能依据第一条ywlxbm=xxyw001的jyls所对应的lzjg的值,来更新全表的ywlxbm=xxyw005的kpdxzh字段。执行结果为图2请问如何才能达到图3的效果?

解决方案 »

  1.   

    MERGE INTO LS A
      USING(SELECT JYLS,LZJG
              FROM LS
             WHERE YWLXBM = 'XXYW001')B
       ON (A.JYLS = B.JYLS)
     WHEN MATCHED THEN
       UPDATE
          SET A.KPDXZH = B.LZJG
    WHERE A.YWLXBM = 'XXYW005';
      

  2.   

    update ls t1
       set t1.kpd = (select t2.lzjg from ls t2 where t1.jyls = t2.jyls and t2.ywlxbm = 'xxyw001')
     where t1.ywlxbm = 'xxyw005';