Kalle_B: MySQL: UPDATE mit Wert aus anderer Tabelle

Hallöle,

ich habe keine Erfahrung mit UPDATE eines Wertes, der aus einer anderen Tabelle kommt. Bitte um Hilfestellung für MySQL 4.1

Ich habe eine Tabelle A, die sagt, welche Adresse zu welcher Gruppe gehört, wobei eine Adresse nur zu einer Gruppe gehören kann:

gruppen_id adress_id
---------- ---------
         2      4711
         2      4712
         3      0815
         3      4711 <= NICHT MÖGLICH

und eine Tabelle B mit Terminen zu den Adressen. In diese Tabelle muss die Gruppe eingetragen werden:

Stunde adress_id gruppen_id
------ --------- ----------
     1      4711          ?
     1      4712          ?
     1      0815          ?
     2      4711          ?

Mir fehlt komplett der Ansatz. Mit JOIN geht das wohl nicht?

Liebe Grüße, Kalle

  1. Hallöle,

    habe doch noch was gefunden und auf meine Belange umgemünzt:

    UPDATE
     tm_eventbuchungen      AS evb1
    ,tm_gruppen_besucher AS bzg1
    SET
     evb1.gruppen_id = bzg1.gruppen_id
    WHERE  evb1.owner_id=3
    AND    bzg1.adress_id=evb1.adress_id

    Betroffene Datensätze:  998 (die Abfrage dauerte 0.0352 sek)

    Ich teste jetzt das Ergebnis ...

  2. UPDATE tabelle2 SET tabelle2.gruppen_id = (SELECT tabelle1.gruppen_id FROM tabelle1 WHERE tabelle1.adress_id = tabelle2.adress_id)

    Ungetestet.. Ich hoffe ich habe keinen Fehler eingebaut