Hallo,
ich habe eine Tabelle mit Ansprechpartnern. Dabei kann es je Kundennummer beliebig viele Ansprechpartner geben. Ich möchte nun eine Liste mit allen Kundennummern und je Kundennummer genau eine Telefonnumer und Faxnummer. Und zwar die Telefonnumer vom Standard-Ansprechpartner (Bool Feld Standard = true) oder wenn es keinen Standard-Ansprechpartner gibt, den Ansprechpartner der zuletzt angelegt wurde (kleinste ID). Ich habe das probiert, aber läuft ewig und es kommen zwar alle Ansprechpartner zurück aber insgesamt hat nur einer eine Telefonnummer in der Rückgabe:
SQL-Code:
select ap.KdNr, sub.TelefonNr, sub.FaxNr
from Ansprechpartner ap
left join
(
select first 1 TelefonNr, FaxNr, KdNr
from Ansprechpartner
order by standard desc, ID desc
) sub
on sub.KdNr = ap.KdNr
where Aktiv