Vinzenz Mai: MySQL5: Update & Select

Beitrag lesen

Hallo,

wie greife ich in einem Update Query innerhalb eines untergeordneten SELECTs auf die zu aktualisierende Datenbank zu?

Datenbank? Meinst Du Tabelle?

update tbl2update fieldx=(select f2 from tbl2 where tbl2.X=tbl2update.X);
Leider meint MySQL: unknown column, obwohl dieses Feld 100%ig existiert in der tbl2update.

Nur? Da ist noch viel mehr falsch.

Du solltest Dir die UPDATE-Syntax ansehen! Ganz besonders empfehle ich Dir die Lektüre des vorletzten Abschnittes:

"Currently, you cannot update a table and select from the same table
     in a subquery."

update tbl2update fieldx=(select abc FROM (select f2 AS abc from tbl2 where tbl2.X=tbl2update.X));

Wie wäre es stattdessen mit Joins? Ich sehe keinen Grund für Subselects.

Freundliche Grüße

Vinzenz