18. december 2012 - 20:34Der er
11 kommentarer og 1 løsning
Select senest 5 dage
Jeg ønsker en query som udvælger de seneste 5 kampdage for hver team. Jeg har lavet følgende kode, som ikke virker efter hensigten, da koden udvælger alle kampdage.
select data.date, data.HomeTeam, data.Goal from data where data.date in( select distinct TOP 5 data.date from data d where data.date = d.Date ) group by data.HomeTeam, data.date, data.Goal
select s1.* from ( select data.date, data.HomeTeam, data.FTHG Goal .row_number() over(partition by HomeTeam) Nr from data ) s1 where Nr < = 5
Jeg får samme fejl.
Hvis jeg fjerner 'order by data.date' får jeg denne fejl:
Msg 4121, Level 16, State 2, Line 1 Cannot find either column "data" or the user-defined function or aggregate "data.FTHG.row_number", or the name is ambiguous.
Ok, nu jeg læser det problem du stiller op engang mere forstår jeg, at det ikke blot er de seneste fem kampdage du skal have, men de seneste fem kampdage for hvert team.
Det minder mig om problemstillingen i dette spørgsmål http://www.eksperten.dk/spm/973868 . Problemet i det spørgsmål viste sig at overstige min ekspertise, men det blev løst fra anden side. Måske kan det inspirere dig til at finde en løsning på problemet i dette spørgsmål. Jeg kommer til at bakke ud.
Synes godt om
Slettet bruger
19. december 2012 - 12:19#8
Jeg havde fået skrevet et punktum i stedet for komma:
select s1.* from ( select data.date, data.HomeTeam, data.Goal ,row_number() over(partition by data.HomeTeam order by data.date) Nr from data ) s1 where Nr < = 5
stanislavsky, raph har allerede sendt et svar, nemlig indlæg #2. Du behøver bare at acceptere det ('flueben' ved 'accepter dette svar' og derefter klik på 'Accepter svar og afgiv points') for at få afsluttet sagen.
Synes godt om
Ny brugerNybegynder
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.