Eddie: UPDATE mit meheren Tabellen als Datenquelle

Hallo allerseits,

bei SELECT, geht das ja folgendermassen:
SELECT ... FROM tabelle1, tabelle2

Wie geht das bei UPDATE?
Ich moechte t1 mit den Daten aus t2 fuellen, da wo t1.id = t2.id

Ich habe nur Beispiele gefunden mit einer einzigen Tabelle innerhalb des UPDATE-Befehls!

Danke für eure Hilfe,
Eddie

--
Old men and far travelers may lie with authority.
  1. Hello,

    Wie geht das bei UPDATE?
    Ich moechte t1 mit den Daten aus t2 fuellen, da wo t1.id = t2.id

    Update $tabelle (fieldlist) select from .....

    geht auf jeden Fall. Bei vielen SQL-Dialekten (inclusive Ansi SQL) darf aber $tabelle nicht selbder Bestandteil des Select-Statements sein.

    Harzliche Grüße aus http://www.annerschbarrich.de

    Tom

    --
    Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
    Nur selber lernen macht schlau
    1. Hallo Tom,

      Update $tabelle (fieldlist) select from .....

      Ist das dann

      UPDATE t1
        SET t1.title = t2.title, t1.content = t2.content
        SELECT FROM t1, t2
          WHERE t1.id = '123' AND t1.id = t2.id

      oder

      UPDATE t1
        SET t1.title = t2.title, t1.content = t2.content
        WHERE t1.id = '123'
          SELECT FROM t1, t2
            WHERE t1.id = t2.id

      oder ???

      Du siehst, so ganz habe ich das nocht nicht gerafft. Und bei Google hab ich auch nichts gefunden.

      Danke,
      Eddie

      --
      Old men and far travelers may lie with authority.
      1. Hello,

        UPDATE t1
          SET title = (select title FROM t2 WHERE t1.id = '123' AND t1.id = t2.id)
          where t1.irgendwas = 'blubb';

        So würde ich das zumindest bei Informix machen.

        Harzliche Grüße aus http://www.annerschbarrich.de

        Tom

        --
        Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
        Nur selber lernen macht schlau
  2. yo,

    Ich moechte t1 mit den Daten aus t2 fuellen, da wo t1.id = t2.id

    um welches dbms handelt es sich denn, ist es mysql ? und willst du die tabelle füllen, dann sind es wohl mehr inserts ? oder willst du bestehende datensätze der tabelle t1 mit werten aus t2 updaten ?

    Ilja