我在数据库中有两个表,表1和表2。 我正在尝试使用基于表2中数据的VBA代码更新表1。
示例:
表1
PartNo Price Description
--------------------------
A 100
B 200 Bad
C 300
表2
PartNo Price Description
--------------------------
A 700
B 200 Good
D 900 Used
更新后,应使用table1 PartNo = table 2 PartNo更改的那些价格或描述更新table1,并添加表2中存在的任何新项目。
表1
PartNo Price Description
--------------------------
A 700
B 200 Good
C 300
D 900 Used
我似乎无法做到这一点,感谢帮助。
答案 0 :(得分:4)
你可以使用两个语句,一个更新和一个这样的插入:
更新
UPDATE Table1
INNER JOIN table2
ON(table1.partNo = table2.PartNo)
SET table1.price = table2.price,
table1.description = table2.description
然后插入:
INSERT INTO table1 (PartNo,Price,Description)
SELECT PartNo,Price,Description FROM table2 t
WHERE NOT EXISTS(SELECT 1 FROM table1 s
WHERE t.PartNo = s.PartNo)