我有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'表填充了(意味着你需要更新並且可能還有一個插入)? –