Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
Delphi 7 Enterprise
|
Re: [SQL] Abfrage tunen
31. Mär 2006, 02:27
So, habe mich auch mal dran versucht...
SQL-Code:
SELECT b.projektid, p.projektname,
ki.umsatz,
b.prsituation, b.cbzuag, b.cbengag,
b.cbrifa, b.cbriman,
k.plank,
k.progk,
ki.istk,
ki.istkstd,
p.ende AS planende, b.ende AS progende
FROM pim_pb_berichte b
INNER JOIN pim_p_projekteneu p
ON b.projektid = p.projektid
LEFT JOIN (SELECT monat, jahr, projektid,
SUM(plan) AS plank,
SUM(prognose) AS progk
FROM pim_pb_kue
WHERE ident = 'KOST'
GROUP BY monat, jahr, projektid) k
ON b.monat = k.monat
AND b.jahr = k.jahr
AND b.projektid = k.projektid
LEFT JOIN (SELECT jahr, pagid,
SUM(CASE WHEN zeile IN (61500, 61532, 61536,
61547, 61543, 61526,
61524, 61512, 61515)
THEN vorjahr + jan
ELSE 0
END) AS umsatz,
SUM(CASE WHEN zeile IN (23112, 23132, 23135,
23162, 23165, 23170,
23183, 24753, 34512,
34832, 45012, 23182)
THEN vorjahr + jan
ELSE 0
END) AS istk,
SUM(CASE WHEN zeile = 14000
THEN vorjahr + jan
ELSE 0
END) * 73 AS istkstd
FROM pim_p_ist
GROUP BY jahr, pagid) ki
ON b.jahr = ki.jahr
AND b.projektid = ki.pagid
WHERE p.projektstatus = -1
AND b.jahr = 2006
AND b.monat = 1
ORDER BY p.projektname ASC
Ungetestet.
MfG
Thorsten
|