2016-01-27 10 views
0

我是不是一個真正的mysql的傢伙更像是一個PHP的傢伙:)MYSQL移動數據,如果條件匹配

我有複製值的問題,從一個表列到另一個表列。

訣竅是隻有條件匹配時才應該複製數據。所以基本上我想要將categoryID從一個錶轉移到另一個表,如果postIDs是相同的。

我有兩個表新聞news_in_category

新聞表,我有以下幾列(ID,標題的categoryID

news_in_category我有以下列(newsId,newsCategoryId)

所以我想移動newsCat如果newsId與id相同,egoryId爲categoryID。

例如,如果消息表ID = 99,應該查找在news_in_category表中找到與NewSID的價值99和newsCategoryId值複製到新聞臺的categoryID ID爲99

希望這對你有意義:)

謝謝!

回答

0

嘗試:

UPDATE news n 
JOIN news_in_category nic ON n.id = nic.newsId 
SET n.categoryID = nic.newsCategoryId 

它看起來像你可能有一個多餘的函數依賴:newsId -> categoryId。如果是這樣,在運行上面的查詢之後,您可以放棄news_in_category表,而不會丟失任何信息。