我有兩個表更新從表2的記錄表1:如何使用T-SQL
Table1
:
RulesVectorID(nullable, primary),Weight,IsDeleted
Table2
:
RulesVectorID(forigen) , Weight,IsDeleted, NumberOfOffers, other fields...
我想做的事情拖的事情:
分配
Id
所有行table1中where RulesVectorID ==null
我嘗試這樣做:
UPDATE myTable1 SET RulesVectorID = SELECT MAX(RulesVectorID) + 1 FROM myTable1, WHERE RulesVectorID IS NULL
要在步驟添加的行(1)我要1複製他們
Weight, IsDeleted
列,並添加到他們的NumberOfOffers
我試過這個:
INSERT INTO myTable2 (Weight, IsDeleted, NumberOfOffers, RulesVectorID) VALUES ( SELECT Weight, IsDeleted, 1, RulesVectorID FROM myTable1 WHERE myTable1.RulesVectorID NOT IN (SELECT RulesVectorID FROM myTable2))
有沒有更乾淨的方法來做到這一點?
通過詢問是否有更乾淨的方式來做到這一點,這是否意味着你有什麼作品?如果有效,請使用它。這很合理。在修復表格後,將RulesVectorID更改爲自動增量,並將其設置爲主鍵,以使其不能爲空。 –