Datensätze mit MySQL 5.0.51 in Tabelle ändern

Some1new

Grünschnabel
Hallo,

ich bin recht neu in php und mySQL unterwegs. Arbeite mit einer lokalen XAMPP Umgebung zu Testzwecken.

Nun meine Frage:

Ich habe eine recht umfangreiche Tabelle, derzeit ca. 280.000 Datensätze.
Nun will ich alle Datensätze aktualisieren, wenn ein bestimmtes Feld X = "0" ist.
Wenn das der Fall ist, dann soll aufgrund anderer Feldinhalte Y, Z etc. eine Abfrage erfolgen, und dann das Ergebnis wieder in Feld X geschrieben werden.

Kann mir jemand sagen, wie ich das auch unter am Besten lösen kann?
Ein einfache UPDATE scheint ja zu entfallen, da ich ja erst nach der Selektion die neuen Werte mittels Y, Z etc. extern ermittlen kann.

Danke vorab für jeden Tipp an einen Newbie

Gruß
Some1new
 
Hallo,

das Problem kann mit einem Subselect gelöst werden:
SQL:
UPDATE tabelle t
SET X = (
  SELECT foo
  FROM bar b
  WHERE b.Y = t.Y AND b.Z = t.Z
)
WHERE X = 0

Grüße,
Matthias
 
Zurück