日期:2014-05-19  浏览次数:20563 次

在一个表中如果有相同记录的话,则进行修改操作,如果没有,则进行插入(多个条件),如何来实现?
表一     tblA
            noid         fItemId         fQty
            1                 2                     3
            1                 3                     9
            2                 9                     10
            20               2                     30


表二     tblB
            noid       fItemId     fQty
            1                 2                 90
            1                 3                 20
            1                 6                   1
            2                 9                   10
            20               1                     2
            20               2                   30

现在要实现的功能是:
        从表二中查询出来的记录,如果表二的noid   ,   fItemId   与表一的相同(tblA.noid=tblB.noid   and   tblA.fitemid=tblB.fitemid),则把表二fQty的值加入到表一fQty中,如果没有相同的记录,则把表二的值插入到表一中,请问如何来实现?
        操作后表一的记录如下
            noid       fItemId       fQty
              1             2                   93
              1             3                   29
              1             6                   1
              2             9                   20
              20           1                   2
              20           2                   60

------解决方案--------------------
update tblA
set
fQty=a.fQty+b.fQty
from
t