我有 2 个表 表 1 = Profile_Update 表 2 = PostalDB
此处表 1 列(BusinessName、ContactName、City、State、Postalcode{PrimaryKey} 等)值也希望存储表 2(City、State、Postalcode{PrimaryKey})列。如何将一个表列值保存到另一个表值。
我有 2 个表 表 1 = Profile_Update 表 2 = PostalDB
此处表 1 列(BusinessName、ContactName、City、State、Postalcode{PrimaryKey} 等)值也希望存储表 2(City、State、Postalcode{PrimaryKey})列。如何将一个表列值保存到另一个表值。
忽略在邮政编码上有一个主键并不聪明(因为在某些情况下,多个城市可以共享一个邮政编码,当然你不希望任何邮政编码只允许一个用户),也许你正在寻找的是这个:
UPDATE p SET city = pu.city, state = pu.state
FROM dbo.PostalDB AS p
INNER JOIN dbo.Profile_Update AS pu
ON p.Postalcode = pu.Postalcode;
INSERT dbo.PostalDB(city, state, Postalcode)
SELECT city, state, postalcode
FROM dbo.Profile_Update AS pu
WHERE NOT EXISTS
(
SELECT 1 FROM dbo.PostalDB
WHERE Postalcode = pu.Postalcode
);
利用
SELECT ... INTO
当您创建新表时。
否则
Insert INTO table (columns...) (SELECT ... FROM ... where ...)