SELECT TOP 1 kolumner FROM
(SELECT TOP 5 kolumner FROM tabellen ORDER by ID) top5
ORDER BY ID DESC
eller
SELECT TOP 1 kolumner FROM tabellen WHERE ID IN
(SELECT TOP 5 ID FROM tabellen ORDER by ID)
ORDER BY ID DESC
6 svar · 655 visningar · startad av CatZ
Jag skulle behöva hämta TOP-5. Det vill säga det femte senaste i databasen baserat på ID.
Hur löser jag det smidigast? Jag har några förslag, man kan ju till exempel hämta TOP5, ordna DESC och strunta i att loopa ut resultatet (skriva ut endast en rad) men det känns... sådär
Några förslag? Det är MS SQL Server
SELECT TOP 1 kolumner FROM
(SELECT TOP 5 kolumner FROM tabellen ORDER by ID) top5
ORDER BY ID DESC
eller
SELECT TOP 1 kolumner FROM tabellen WHERE ID IN
(SELECT TOP 5 ID FROM tabellen ORDER by ID)
ORDER BY ID DESC
Givetvis, snyggare och lättare att förstå!
SELECT TOP 1 ID FROM tabellen WHERE ID IN (SELECT TOP 5 ID FROM tabellen ORDER by ID DESC) ORDER BY ID ASC
Antingen fixar du till ditt inlägg eller så accepterar jag emissions som svar istället. Your choice.
Du vågar klaga på min ihop skrivning alltså?
Det vågar jag! Jag vågar dock inte klaga på din särskrivning av "ihop skrivning".