Avatar billede magic-mouse Novice
20. september 2011 - 08:45 Der er 7 kommentarer og
1 løsning

Anderledes problematik med at hente unik data fra 2 celler.

Jeg har en tabel med 3 (vigtige) celler.

1 Navn 2 Formål og 3 tids stempel.

En person kan have op til 3 formål. De 3 kan være det samme men de kan også være forskellige.

Informationen opdageres en gang i mellem, og jeg vil altid vise den nyeste information. Men også kun den nyeste.

Men jeg vil vise personen ud fra hvert formål.

Eksempel.

person | formål | stempel
--------------------------
A    | 1      | 12:00
A    | 2      | 12:01
A    | 2      | 12:02
B    | 3      | 12:03
B    | 1      | 12:04


Ovenstående skal vise:

person | formål | stempel
--------------------------
A    | 1      | 12:00
A    | 2      | 12:02
B    | 3      | 12:03
B    | 1      | 12:04


Vælger jeg distinct, så viser den bare:
person | formål | stempel
--------------------------
A    | 2      | 12:02
B    | 1      | 12:04

Har også prøvet med GROUP BY men det er ikke altid den nyeste jeg går frem der.

Nogen forslag
Avatar billede majbom Novice
20. september 2011 - 08:55 #1
"group by person, formål" OG "order by stempel"
Avatar billede balderk Nybegynder
20. september 2011 - 09:06 #2
Som jeg forstår dig, så vil du kun vise den højeste værdi for hver person, formål.

Så derfor som ovenstående, men start med en
SELECT person, formål, MAX(stempel)

Se evt. mere om MAX-funktionen her:
http://www.techonthenet.com/sql/max.php
Avatar billede magic-mouse Novice
20. september 2011 - 09:37 #3
MIN SQL
SELECT * FROM  `listen` GROUP BY  `person` , `formaal` ORDER BY  `timestamp`  DESC "
Avatar billede majbom Novice
20. september 2011 - 10:05 #4
og det giver ikke det ønskede resultat?
Avatar billede balderk Nybegynder
20. september 2011 - 10:36 #5
Prøv at checke eksemplet "Example using GROUP BY" i mit tidligere link.
Avatar billede magic-mouse Novice
20. september 2011 - 10:37 #6
Nej.. men MAX() løste det.

SELECT *, max(`timestamp`) FROM  `listen` GROUP BY  `person` , `formaal`

Super, balderk har bare siddet med dette i 3 dage. Smid et svar så får du dine points.
Avatar billede majbom Novice
20. september 2011 - 10:59 #7
ja, det er fordi du også skal have vist timestamp, så er den nødt til også at gruppere efter denne og så vil den tage alle poster med. max er vejen frem her :)
Avatar billede balderk Nybegynder
20. september 2011 - 11:41 #8
Altid en fornøjelse at give og modtage hjælp her.
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