UPDATE
    MTZAIK
SET
    TGNCSU=TGF+ T.SJJCSU       FROM MTZAIK,
    (SELECT
        SJJCSU
    FROM
        TRDCRK
    WHERE
        NENDDT = '200808' AND
        KANRNO = '11111' AND
        NYUSKB = '1' AND
        RIRKNO = 3
    ) T 
where id=1

解决方案 »

  1.   


    没有看见关联关系啊,仅仅加了个常数啊!
    UPDATE MTZAIK
       SET TGNCSU = TGF + (SELECT SJJCSU
                             FROM TRDCRK
                            WHERE NENDDT = '200808'
                              AND KANRNO = '11111'
                              AND NYUSKB = '1'
                              AND RIRKNO = 3) T
     WHERE ID = 1;
      

  2.   

    1:UPDATE MTZAIK SET TGNCSU=TGF+ T.SJJCSU FROM MTZAIK,是SQL server语法
    2:表TRDCRK(T)和MTZAIK貌似没有对应关系呀,或者
         SELECT 
            SJJCSU 
        FROM 
            TRDCRK 
        WHERE 
            NENDDT = '200808' AND 
            KANRNO = '11111' AND 
            NYUSKB = '1' AND 
            RIRKNO = 3  根本查询出来只有一条纪录?
      

  3.   

    UPDATE 
        MTZAIK 
    SET 
        TGNCSU=TGF+(SELECT 
            SJJCSU 
        FROM 
            TRDCRK 
        WHERE 
            NENDDT = '200808' AND 
            KANRNO = '11111' AND 
            NYUSKB = '1' AND 
            RIRKNO = 3 
        ) T 
    where id=1 
      

  4.   

    您写的sqL我也尝试过了,也不行,都提示说sql语句没有正常结束。
    不知道什么原因另外他们没有关联关系
      

  5.   

    VC555,您好,对,没有关联关系,只有一条记录。请问在ORACLE中,这样的语句怎么写呢~~谢谢
      

  6.   

    经过各位好人的提示教导,我弄好了,谢谢!
    就是根据以上的写法;UPDATE 
        MTZAIK 
    SET 
        TGNCSU=TGF+(SELECT 
            SJJCSU 
        FROM 
            TRDCRK 
        WHERE 
            NENDDT = '200808' AND 
            KANRNO = '11111' AND 
            NYUSKB = '1' AND 
            RIRKNO = 3 
        ) T 
    where id=1然后把T去掉就好用了,谢谢!
      

  7.   

    UPDATE 
        MTZAIK 
    SET 
        TGNCSU=TGF+(SELECT 
            SJJCSU 
        FROM 
            TRDCRK 
        WHERE 
            NENDDT = '200808' AND 
            KANRNO = '11111' AND 
            NYUSKB = '1' AND 
            RIRKNO = 3 
        )