Min en max value

Status
Niet open voor verdere reacties.

neira

Gebruiker
Lid geworden
18 mrt 2009
Berichten
15
Stel, je hebt een database met volgende kolommen:

bedrag, datum, ID

2000, 20/7/2014, 1
0, 20/8/2014, 1

Ik wil een resultaat van 1 lijn, met een kolom 'oorspronkelijk bedrag', en een kolom 'uiteindelijk bedrag' (op basis van min/max creatiedatum of wijzigingssleutel)

Hoe doe je dat? Alle hulp welkom

(nu doe ik het in twee keer, ik voer eens uit met min, en met max, en in excel doe ik verticaal zoeken
 
Zoiets...

select
min.bedrag as oorspronkelijk_bedrag
, max.bedrag as uiteindelijk_bedrag
, minmax.ID as ID
from tabel min
inner join
(select min(datum) mindat
,max(datum) maxdat
, ID
from tabel
) minmax
on min.ID = minmax.ID
and min.datum = minmax.mindat
inner join tabel max
on max.ID = minmax.ID
and max.datum = minmax.maxdat
 
Bedankt, ik ben er bijna, denk ik?

select
minst.M_I_BEDRAG_BOETE as oorspronkelijk_bedrag
,maks.M_I_BEDRAG_BOETE as uiteindelijk_bedrag
,minstmaks.N_BOETE_IDF as ID

from BOETE_IO minst

inner join

(select min(S_I_CREAT) mindat, max(S_I_CREAT) maxdat, N_BOETE_IDF from BOETE_IO) minstmaks
on minst.N_BOETE_IDF = minstmaks.N_BOETE_IDF
and minst.S_I_CREAT = minstmaks.mindat

inner join BOETE_IO maks
on maks.N_BOETE_IDF = minstmaks.N_BOETE_IDF
and maks.S_I_CREAT = minstmaks.maxdat

geeft foutmelding

[Error Code: -119, SQL State: 42803] DB2 SQL Error: SQLCODE=-119, SQLSTATE=42803, SQLERRMC=N_BOETE_IDF, DRIVER=4.15.82. 2) [Error Code: -727, SQL State: 56098] DB2 SQL Error: SQLCODE=-727, SQLSTATE=56098, SQLERRMC=2;-119;42803;N_BOETE_IDF, DRIVER=4.15.82
 
Ps: waar jij min schreef, heb ik soms "minst" van moeten maken, en max vervangen door "maks" omdat min en max automatisch geïnterpreteerd wordt als de formule voor minimum of maximum, en aldus niet als alias kan gebruikt worden.
 
Voeg na "select min(S_I_CREAT) mindat, max(S_I_CREAT) maxdat, N_BOETE_IDF from BOETE_IO" een group by toe:
GROUP BY N_BOETE_IDF.

(ontbrak ook in mijn query)
 
Merci plagvreugd, ge zijt mijn held vanaf nu! ik ga nu bestuderen hoe de oplossing precies in elkaar steekt, zodat ik de methode kan toepassen voor soortgelijke vraagstukken, maar het belangrijkste is dat het werkt!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan