Forum: Datenbanken
by Jasocul,
16. Apr 2024
SELECT A.ABFDocErfNr,A.ABFDocKundenNr,B.ABFPosArtNr,B.ABFPosName1
FROM ABFPos AS B
INNER JOIN ABFDok AS A ON B.ABFPosDocId = A.ABFDocID
where A.ABFDocErfNr = 'O004714' and B.ABFPosType = 0 and A.ABFDocKundenNr = 'D018543'
and not exists (SELECT 1
FROM ABFPos AS BB
INNER JOIN ABFDok AS AA ON BB.ABFPosDocId = AA.ABFDocID
where...
Forum: Datenbanken
by Jasocul,
16. Apr 2024
Den Fehler habe ich übersehen. Das zweite "where" in der Hauptabfrage durch ein "and" ersetzen sollte genügen.
Im Subselect (nach dem "not exists") muss nach dem select noch irgendwas stehen. Ich trage da meistens eine "1" ein, da Feldinhalte an der Stelle keine Rolle spielen. Man kann aber auch ein "*" oder Feldnamen eintragen.
Forum: Datenbanken
by Jasocul,
16. Apr 2024
Da bestätigt sich mein Verdacht, dass du ALLE Angebote mit ALLEN Rechnungen des Kunden vergleichst. Außerdem brauchst du noch die Verbindung der Angebotspositionen zu den Rechnungspositionen
Du musst daher deine "like" anpassen. und die Artikelverbindung einbauen. Etwa so:
SELECT A.ABFDocErfNr,A.ABFDocKundenNr,B.ABFPosArtNr,B.ABFPosName1
FROM ABFPos AS B
INNER JOIN ABFDok AS A ON...