我有兩個表:項目和ItemHistory與一對多的關係。如何使用基於mySQL中最新一行子表的值更新列?
我想扁平化'item'表並添加:dtLastUpdated和nLastUpdatedByUserID列,但我需要升級表數據。
項目
的NID
dtCreated
dtLastUpdated(新列)
nLastUpdatedByUserID(新列)
ItemHistory
的NID
nItemID
dtUpdated
nUpdatedByUserID
有人可以幫助我創建一個更新語句來做到這一點。我嘗試過很多在mySQL中不合法的東西,所以有點卡住了。例如...
UPDATE Item
INNER JOIN ItemHistory ON ItemHistory.nItemID=Item.nID
SET Item.dtLastUpdated = ItemHistory.dtUpdated,
Item.nLastUpdatedByUserID = ItemHistory.nUpdatedByUserID
ORDER BY ItemHistory.dtUpdated DESC
這是mySQL 5.5安裝所必需的。
感謝
是的,這是原來的表;我繼續說:「我想稍微放平'item'表並添加:dtLastUpdated和nLastUpdatedByUserID列,但我需要升級表數據。」 – Dan
我已重新回答了這個問題,以避免將來出現任何含糊之處 – Dan
@Dan檢查我的編輯。根據我在網上找到的一些MySQL文檔,這應該是正確的語法。 – Icarus