webForumDet fria alternativet

Hämta poster med högst värde inom gruppen

Databaser & SQLur Databashanterare & SQL

4 svar · 372 visningar · startad av inspiro

inspiroMedlem sedan sep. 2005673 inlägg
#1

Har en tabell med data som ser ut så här:

Id | GroupId | Time
1    1         15:30
2    1         16:00
3    1         16:30
4    2         11:30
5    2         12:00

I exemplet ovan skulle jag vilja plocka ut raderna med id 3 och 5 men vet inte hur jag ska bära mig åt riktigt.

Peter SMedlem sedan dec. 20025 483 inlägg
#2

Vad menar du med "värde": id eller time?

inspiroMedlem sedan sep. 2005673 inlägg
#3

"Time" menade jag, sorry. Den rad för varje groupid som har den sista tiden ska det vara. Det är datatypen datetime. Sql server 2005

Peter SMedlem sedan dec. 20025 483 inlägg
#4

Okej :)

select t.id
     , t.groupid
     , t.time
  from tbl t
 where time
     = ( select max(time)
           from tbl
          where groupid = t.groupid )
inspiroMedlem sedan sep. 2005673 inlägg
#5

Tackar, precis så gjorde man! :)

128 ms totalt · 3 externa anrop · v20260731065814-full.29ac60f6
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)