Just nu i M3-nätverket
Gå till innehåll

GROUP BY-fråga


Kristianstad

Rekommendera Poster

Hej!

 

Har kört med MySQL under några år och är rätt så ovan vid MSSQL.

 

HuvudID | ForumID | Datum
1 | 1 | 2005-01-01 10:00
1 | 2 | 2005-01-01 11:00
1 | 3 | 2005-01-01 12:00
2 | 4 | 2005-01-01 13:00
2 | 5 | 2005-01-01 14:00
3 | 6 | 2005-01-01 15:00

 

Ovan ser ni hur tabellen ser ut. Jag vill helt enkelt att HuvudID ska grupperas och att den ska välja det Datum som är yngst. Alltså ->

 

HuvudID | ForumID | Datum
1 | 3 | 2005-01-01 12:00
2 | 5 | 2005-01-01 14:00
3 | 6 | 2005-01-01 15:00

I MySQL hade jag gjort så här:

[color="#0000ff"]SELECT[/color] HuvudID, ForumID, [color="#0000ff"]Max([/color]Datum[color="#0000ff"])[/color]
[color="#0000ff"]FROM[/color] forum
[color="#0000ff"]GROUP BY[/color] HuvudID
[color="#0000ff"]ORDER BY[/color] HuvudID [color="#0000ff"]DESC[/color]

 

 

Men i MSSQL måste man om jag förstått det rätt ange ForumID i GROUP BY. Men om jag gör det blir ju inte resultatet som jag vill ha det.

 

Har någon tips på hur jag ska göra?

 

 

 

/ Kristoffer

Windows kunde inte hitta något tangentbord. Tryck F1 för att försöka igen eller F2 för att avbryta.

 

Länk till kommentar
Dela på andra webbplatser

Hej!

 

Prova med att göra som du hade gjort i MySQL men skriv sum(ForumID) i selectsatsen. Jag tror att det kan funka. Är det så att du har fler Datum med exakt samma tid kan det dock bli lite konstiga ForumID. Men det problemet hade du väl i MySQL också, jag antar att du inte kunde veta vilket ForumID som retunerades.

 

Hoppas det funkar

 

Håkan A

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...