我有2表 表1 = Profile_Update 表2 = PostalDB
这里表1柱(BUSINESSNAME,联系人姓名,城市,州,邮编{的PrimaryKey},等等。)的值要存储表2(城市,州,邮编{PrimaryKey})列。如何将一个表列值保存到另一个表值中。
我有2表 表1 = Profile_Update 表2 = PostalDB
这里表1柱(BUSINESSNAME,联系人姓名,城市,州,邮编{的PrimaryKey},等等。)的值要存储表2(城市,州,邮编{PrimaryKey})列。如何将一个表列值保存到另一个表值中。
使用
SELECT ... INTO
当你创建一个新表。
否则
Insert INTO table (columns...) (SELECT ... FROM ... where ...)
忽略了其对邮政编码主键不聪明(因为在某些情况下,多个城市可以共享的邮政编码,你一定不希望只允许来自一个用户任何邮政编码),也许你正在寻找的是这样的:
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
);
哇谢谢你ü我得到了它.. – SDR
温柔的人对不起,说数据不会自动保存到PostalDb表,但profile_update表完全保存数据,如果我执行查询的手段,那么只有它将被添加在PostalDb表中。 .my需要的是自动保存的数据到PostalDb也根据Profile_Update表条目根据您的建议我删除Postalcode作为主键.. Kindly帮助.. – SDR
对不起,我不知道是什么问题。你想自动将邮政编码,城市和州两次存储在第二个表中?为什么?如果需要使用两个不同的表名称冗余访问相同的数据,只需创建一个视图即可。你可以用触发器做你想做的事情,但我认为这完全浪费了时间,精力和存储空间。 –
http://stackoverflow.com/questions/16000854/how-to-create-a-new-table-from-an-existing-表是不是同一个问题? – Sajeetharan
邮政编码上的主键可能不是明智的 – Brad
问题仍不清楚。措辞听起来像第二个表不存在,但在对象资源管理器中很明显它确实存在。 'PostalDB'表是空的(意味着你需要一个插入),还是'PostalDB'表填充了(意味着你需要更新并且可能还有一个插入)? –