Avatar billede jn03 Nybegynder
11. marts 2008 - 13:42 Der er 3 kommentarer og
1 løsning

Prisforskellen mellem de to seneste datoer

Jeg har en tabel i SQL Server 2000 indeholdende 3 kolonner; enhedspris_id, enhedspris og dato.

Ønsker hele tiden at trække de to seneste enhedspriser, målt vha. enhedspris_id, fra hinanden. Alternativt kan dato benyttes i stedet for enhedspris_id. Resultatet af dette regnestykke skal optræde i en ny kolonne.

Eksempel hvordan jeg gerne vil have det skal se ud:

enhedspris_id    enhedspris    dato        difference
1        200        1/1-07        …
4        160        6/7-07        - 40
8        175        11/1-08        + 15

Nogle forslag til hvordan ovenstående kan løses?

På forhånd tak!
Avatar billede jn03 Nybegynder
11. marts 2008 - 13:44 #1
Indholdet i ovenstående kolonner skal lige rykkes lidt mod højre således f.eks. "enhedspris" er henholdsvis "200", "160" og "175"....
Avatar billede the_party_dog Nybegynder
11. marts 2008 - 17:52 #2
Jeg kigger lige med her :o) Jeg er ude i noget med noget group by, case, men jeg kan ikke gennemskue hvordan jeg får den næstnyeste i et og samme udtræk...
Avatar billede ldanielsen Nybegynder
11. marts 2008 - 23:13 #3
Hurra for sub-selects:

SELECT enhedspris_id, enhedspris, dato,
(SELECT TOP 1 enhedspris FROM enhedspris WHERE enhedspris_id = e1.enhedspris_id) -
(SELECT TOP 1 enhedspris FROM enhedspris WHERE enhedspris_id < e1.enhedspris_id ORDER BY enhedspris_id DESC)
AS [difference]
FROM enhedspris e1 ORDER BY e1.enhedspris_id
Avatar billede jn03 Nybegynder
18. marts 2008 - 09:06 #4
Jeg har selv fået løst problemet - med lidt inspiration fra ovenstående.
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