Linuchs: UPDATE abhängig von anderen Tabellen

Beitrag lesen

Sorry, ich habe Randbedingungen vergessen. Aber bei manchen vorhandenen Kontakten (nicht bei allen) wird ein X gesetzt, bei manchen fehlenden Kontakten (aber nicht bei allen) fehlt das X. Irgendwie scheint da jemand zu würfeln:

# . auf Stelle 5 setzen (X zuruecknehmen)
UPDATE tm_adressen
SET merkmalsleiste = CONCAT( SUBSTRING(merkmalsleiste,1,4), '.' )
WHERE owner_id  = 15
AND   adr_kz    = 2;

# X auf Stelle 5, wenn keine Kontakt- und keine Eventwuensche
UPDATE    tm_adressen adr1
LEFT JOIN tm_kontakte kon1
ON        kon1.besucher_id  = adr1.id
AND       kon1.prio_1       = 0
AND       kon1.prio_2       = 0
#LEFT JOIN tm_eventbuchungen evb1
#ON        evb1.adress_id    = adr1.id
#AND       evb1.prio_1       = 0
#AND       evb1.prio_2       = 0
SET       adr1.merkmalsleiste = CONCAT( SUBSTRING(merkmalsleiste,1,4), 'X' )
WHERE adr1.owner_id  = 15
AND   adr1.adr_kz    = 2
AND   kon1.id IS NULL
#AND   evb1.id IS NULL;

Linuchs