Avatar billede anri Novice
11. april 2007 - 15:02 Der er 1 løsning

Select top 2 fra grupper

Jeg har en tricky en her.

Jeg har en tabel hvorpå jeg laver en GROUP BY [kolonne1].
Den kunne se således ud:
BY1---By2----afstand
H1----H2-----10
H1----H3-----20
H1----H4-----30
H2----H1-----10
H2----H3-----50
H2----H4-----15

Fra den tabel skal jeg kun have de 2 byer der ligger tættest på byen i kolonnen [by1]

Hvordan kan man gøre det?
Avatar billede anri Novice
12. april 2007 - 10:10 #1
Fandt selv en løsning baseret på følgende query :

CREATE TABLE Prod
(
workplace VARCHAR(10) NOT NULL,
dt DATETIME NOT NULL,
value FLOAT NOT NULL,
PRIMARY KEY (workplace, dt)
)

SELECT workplace, AVG(value) AS avg_value
FROM Prod AS P
WHERE dt IN (SELECT TOP 20 dt
FROM Prod
WHERE workplace = P.workplace
ORDER BY dt DESC)
GROUP BY workplace
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

Seneste spørgsmål Seneste aktivitet
I går 10:21 Ny printer, men hvilken Af mort1 i Printere
13/0819:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging