您的位置:首頁技術文章
文章詳情頁

MySQL 聯合查詢并更新到另一個表,求教

瀏覽:100日期:2022-06-14 17:12:44

問題描述

A表里有uid,name B表有uid,nick

我想把A表和B表的name,nick 都更新到C表,但是C表可能有對應uid,也可能沒有,3個表的uid都設置了主鍵。求教該怎么寫SQL語句。

假如A表和B表的uid不是全對應的,A表有的uid B表不一定有,但是我想讓C表都更新,只要A或B有一個有的,C表的uid就添加它。該怎么寫。非常感謝!

我這樣寫的,會提示主鍵沖突。

[SQL]insert into accounts(uid,balance) (select uid,balance from wp_accountinfo);[Err] 1062 - Duplicate entry ’325’ for key ’PRIMARY’

問題解答

回答1:

你這樣寫肯定會沖突的啊,這樣的話你就插入了重復的主鍵了,最簡單的就是分多個sql操作就可以了。比如你可以把A和C表重復的uid更新掉。然后再把C中不存在A的添加到C中,以此類推就可以了

回答2:

insert into account(uid,balance) (select uid, balance from wp_accountinfo) on duplicate key update balance=column(blance);

相關文章:
国产综合久久一区二区三区