Einzelnen Beitrag anzeigen

Rainbow6

Registriert seit: 21. Mai 2019
20 Beiträge
 
#10

AW: Komplizierte SQL-Abfrage

  Alt 10. Jul 2020, 21:10
Es empfiehlt sich immer so eine Abfrage mit WITH aufzubauen - also z.B.:

Code:
WITH
PersonenOhneAuftrag AS (
   SELECT pnum FROM Auftrag GROUP BY pnum HAVING COUNT(*) = 0
),
PersonenOhneNAuftrag AS (
   SELECT pnum FROM Auftrag WHERE Typ <> N GROUP BY pnum
),
...
SELECT * FROM Person
WHERE num NOT IN (SELECT pnum FROM PersonenOhneAuftrag)
OR num IN (SELECT pnum FROM PersonenOhneNAuftrag)
...
Durch das WITH hast du die Möglichkeit, deine Abfragen Stück für Stück zu testen und zu strukturieren - und die meisten Query Optimizer haben es damit auch leichter - zumindest ist das bei DB2 so.

Grüße
Daniel
  Mit Zitat antworten Zitat