2014-04-25 37 views
0

我有兩個不同的表。更新設置表與3個不同的表外鍵和主鍵

Department表

//Department 
D#   DNAME 
------------------- 
1   SALES 
2  ACCOUNTING 
3   GAMES 
5   SPORTS 

EMPLOYEE表

//Employee 
E#  D# 
----------- 
1  3 
2  2 
3  5 
4  5 

現在使用Update語句,更新d#= 5 d#= 3;

目前使用此語句

UPDATE EMPLOYEE SET D# = 3 WHERE D# = 5; 

但後來我努力學習,如果我不想更新使用d#,但是想用這意味着DNAME更新E會從體育#將改變遊戲,什麼我應該怎樣解決它。

回答

0

你想沿着線的multi table update

東西:

update employee e 
    join department d using (d#) 
    set e.d# = 3 
where d.dname = 'SPORTS'; 

sqlfiddle