2017-02-04 7 views
2

So bin ich in einer Situation, in der ich derzeit zwei Tabellen, die durch einen Fremdschlüssel verknüpft sind.SQL: Wählen Sie Einfügen mit ID aus der ersten Spalte

`table_a` (
    `table_id` int not null, 
    `important_value varchar(128) not null, 
); 

`table_b` (
    `table_id` int not null, 
    `table_a_id` int not null, 
) 

Ich möchte important_value in table_b bewegen, die einen Verweis auf table_a hat.

Unter der Annahme, dass ich verwende Sie die folgenden alten SQL

alter table `table_b` add column `important_value` varchar(128) not null; 

Wie würde ich jetzt die entsprechenden important_value in table_b einfügen gegeben es Bezug auf table_a_id hat?

+0

Insult? Ist das nicht schon zu viel? – Strawberry

+0

Verdammt, du hast mich erwischt. Bearbeitet zum Einfügen! – Dominic

Antwort

1

können Sie verwenden, um eine join:

update table_b b join 
     table_a a 
     on b.table_a_id = a.table_id 
    set b.important_value = a.important_value; 
+1

Das hat perfekt funktioniert. Ich habe 9 Minuten Zeit, um eine Antwort zu akzeptieren, aber ich werde sicher die Rückreise machen. Vielen Dank! – Dominic

Verwandte Themen