Hallo, ich habe 5 Tabellen und möchte folgendes abrufen:
Es ist immer nur 1 Wert in einer der article-Tabellen vorhanden, der ausgegeben werden soll.
Tab0: def
defkey oid
Tab1: 1_2article
aid value
Tab1: 2_2article
aid value
Tab1: 3_2article
aid value
Tab1: 4_2article
aid value
Gebe ich statt "and" "or" ein, werden Werte ausgegeben, allerdings viel zu viele.
Es ist immer nur 1 Wert in einer der article-Tabellen vorhanden, der ausgegeben werden soll.
Tab0: def
defkey oid
Tab1: 1_2article
aid value
Tab1: 2_2article
aid value
Tab1: 3_2article
aid value
Tab1: 4_2article
aid value
SQL:
select distinct coalesce(cmita.value, cmea.value, cmiaa.value, cmca.value) from def cmida
LEFT JOIN 1_2article cmita ON cmida.defkey = cmita.aid
LEFT JOIN 2_2article cmea ON cmida.defkey = cmea.aid
LEFT JOIN 3_2article cmiaa ON cmida.defkey = cmiaa.aid
LEFT JOIN 4_2article cmca ON cmida.defkey = cmca.aid
where cmida.oid = 'XXXX' and cmita.oid = 'YYYYY' and cmea.oid = 'YYYYY' and cmiaa.oid = 'YYYYY' and cmca.oid = 'YYYYY';
Gebe ich statt "and" "or" ein, werden Werte ausgegeben, allerdings viel zu viele.