Avatar billede Red0z Nybegynder
27. januar 2011 - 11:17 Der er 1 kommentar og
1 løsning

MAX(dato) virker ikke efter hensigt

Hey folkens!

Sidder og laver et query hvor jeg skal trække en masse brugere ud af en database


SELECT BL.Bruger_ID,MAX(BR.Oprettet), MAX(to_date(User_Log.Time_Stamp,'yyyy-mm-dd'))
FROM BL, BR
WHERE BR.Bruger_ID = BL.Bruger_ID
Group by BL.Bruger_ID

Jeg bruger MAX(BR.Oprettet)
Men den returnerer ikke nødvendigvis den 'nyeste' dato fra tabellen BL. Hvad kan dette være ?
Avatar billede Red0z Nybegynder
27. januar 2011 - 11:18 #1
User_Log.Time_Stamp er nu BL.Timestamp forresten :)
Avatar billede Red0z Nybegynder
27. januar 2011 - 11:58 #2
Fandt en løsning =>

SELECT Bruger_ID, Time_Stamp

From
(
    SELECT Bruger_ID, Time_Stamp, max(Time_Stamp) over (partition by Bruger_ID) max_date
    FROM Bruger_Log
)
Where Time_Stamp = Nyeste_dato
And rownum < 1001
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester