读书人

两表更新

发布时间: 2012-01-08 22:48:50 作者: rapoo

两表更新求助
有表A、B,
A表的结构如下:
ID colA colB colC
1 a b c
2 x y z
表B
colA colB colC
a b o
x y p
m n q
...现在要从B表中插入更新数据到A表中,规则如下:
如果B表中存在与A表中colA colB相同的行,则用B表colC的数据更新A表中ColC的数据,如果B表中有A表中不存在的行,则插入新行到A表中,怎样写这样的语句?
语句成功后,A表的数据如下:
ID colA colB colC
1 a b 0
2 x y p
3 m n q



[解决办法]
不好意思,居然看了,句都改下

Update A Set A.colC = B.colC From A Inner Join B On A.colA = B.colA And A.colB = B.colB

Insert A(colA, colB, colC) Select colA, colB, colC From B
Where Not Exists (Select colA, colB From A Where colA = B.colA And colB = B.colB)

读书人网 >SQL Server

热点推荐