irgendwer33
Grünschnabel
Hallo Leute, habe folgendes SQL-Oracle-Statement erstellt:
Das Problem, dass ich habe ist, dass ich den größten MAX Oder MIN WERT brauche, was ja mit greatest gehen soll, aber in Abhängigkeit zum größten MAX oder MIN Wert benötige ich auch die FLUGID. Das heißt ist der MAX Wert größer, dann brauche ich den Wert und die MAXFLUGID, ist der MIN Wert größer, dann brauche ich in einer Zeile ausgeben den MIN Wert und die MINFLUGID. Also nicht so, wie ich es gemacht habe.
Bitte um Hilfe!
irgendwer33
Code:
SELECT ABS(MED-STDMAX) AS "MAX", ("MAXFLUGID"), ABS(MED-STDMIN) AS "MIN" , ("MINFLUGID") FROM (
SELECT * FROM (
SELECT fzg.flugstunden_gesamt AS "MED", fzg.flugzeugid AS "MEDFLUGID"
FROM flugzeugcool fzg,
flugzeugtypcool ftp
WHERE fzg.flugzeugtypid = ftp.flugzeugtypid
ORDER BY fzg.flugstunden_gesamt
)
WHERE rownum < = (
SELECT TRUNC((COUNT(*)+1)/2) AS "MED" FROM
(SELECT flugstunden_gesamt FROM
(SELECT *
FROM flugzeugcool fzg,
flugzeugtypcool ftp
WHERE fzg.flugzeugtypid = ftp.flugzeugtypid
ORDER BY fzg.flugstunden_gesamt))
)
MINUS
SELECT *
FROM (
SELECT fzg.flugstunden_gesamt, fzg.flugzeugid
FROM flugzeugcool fzg,
flugzeugtypcool ftp
WHERE fzg.flugzeugtypid = ftp.flugzeugtypid
ORDER BY fzg.flugstunden_gesamt
)
WHERE rownum <= ((
SELECT TRUNC((COUNT(*)+1)/2) AS "MED" FROM
(SELECT flugstunden_gesamt FROM
(SELECT *
FROM flugzeugcool fzg,
flugzeugtypcool ftp
WHERE fzg.flugzeugtypid = ftp.flugzeugtypid
ORDER BY fzg.flugstunden_gesamt))
) - 1)
)
,
(
SELECT fzg.flugstunden_gesamt AS "STDMIN", fzg.flugzeugid AS "MINFLUGID"
FROM flugzeugCOOL fzg,
flugzeugtypCOOL ftp
WHERE fzg.flugzeugtypid = ftp.flugzeugtypid
AND fzg.flugstunden_gesamt = (SELECT MIN (fzg.flugstunden_gesamt) FROM flugzeugCOOL fzg)
)
,
(
SELECT (fzg.flugstunden_gesamt) AS "STDMAX", fzg.flugzeugid AS "MAXFLUGID"
FROM flugzeugCOOL fzg,
flugzeugtypCOOL ftp
WHERE fzg.flugzeugtypid = ftp.flugzeugtypid
AND fzg.flugstunden_gesamt = (SELECT MAX (fzg.flugstunden_gesamt) FROM flugzeugCOOL fzg)
)
WHERE rownum <2
Das Problem, dass ich habe ist, dass ich den größten MAX Oder MIN WERT brauche, was ja mit greatest gehen soll, aber in Abhängigkeit zum größten MAX oder MIN Wert benötige ich auch die FLUGID. Das heißt ist der MAX Wert größer, dann brauche ich den Wert und die MAXFLUGID, ist der MIN Wert größer, dann brauche ich in einer Zeile ausgeben den MIN Wert und die MINFLUGID. Also nicht so, wie ich es gemacht habe.
Bitte um Hilfe!
irgendwer33