Avatar billede mosquito Nybegynder
03. januar 2006 - 20:32 Der er 8 kommentarer og
1 løsning

distinct top(5) giver ikke det ønskede resultat

Jeg har følgende tre tabeller, med følgende kolonner, som jeg bruger i min sortering:

RegType: rtID, rtName
RegHours: regID, rtID,
Registrations: rID, rDate, rEmpID, regID

select distinct top(5) rtName as [type], rDate
from RegType
join RegHours on RegHours.rtID=RegType.rtID
join Registrations on Registrations.regID=RegHours.regID
where Registrations.rEmpID = 'abc'
order by rDate DESC

Administration        2005-12-14 00:00:00.000
Overarbejde        2005-12-14 00:00:00.000
Udvikling        2005-12-14 00:00:00.000
Administration        2005-12-13 00:00:00.000
Overarbejde        2005-12-13 00:00:00.000

Som vist, er der ikke tale om en top 5 liste som er distinct, som jeg har brug for. Hvordan løser jeg opgaven? Hvori består min fejl?
Avatar billede arne_v Ekspert
03. januar 2006 - 20:36 #1
hvad definerere top ?

nyeste rDate ?

eller ?
Avatar billede mosquito Nybegynder
03. januar 2006 - 20:44 #2
listen skal være over de senest anvendte registreringstype, ved kolonne rtName
Avatar billede arne_v Ekspert
03. januar 2006 - 20:46 #3
select distinct top(5) rtName as [type], max(rDate) as maxrdate
from RegType
join RegHours on RegHours.rtID=RegType.rtID
join Registrations on Registrations.regID=RegHours.regID
where Registrations.rEmpID = 'abc'
group by rtName
order by max(rDate) DESC

måske
Avatar billede mosquito Nybegynder
03. januar 2006 - 20:49 #4
problemet opstår når det er nyeste dato jeg ønsker at bruge top(5) på. findes der en buttom(5) har jeg ikke brug for 'order by' men faktisk skal jeg ikke bruge datoen til andet end at sikre mig at de listes rigtigt. Istedet for regID, skal jeg bruge rtID, så jeg har et 'key value pair' til en drop down liste. Hvis du forstår
Avatar billede mosquito Nybegynder
03. januar 2006 - 20:52 #5
takker for hjælpen. Damn og jeg har kæmpet det meste af et par timer for at få det til at virke ;-) nå jeg blev endnu engang klogere.. smid venligst et svar.
Avatar billede arne_v Ekspert
03. januar 2006 - 20:54 #6
ok
Avatar billede mosquito Nybegynder
03. januar 2006 - 20:56 #7
Et sidespørgsmål, hvis det er kort. Hvordan undgår jeg at få listet datoen, som kun skal bruges til at sortere efter?
Avatar billede arne_v Ekspert
03. januar 2006 - 21:01 #8
ofte tror jeg bare at man ville undlade at bruge feltet i applikationen
Avatar billede mosquito Nybegynder
03. januar 2006 - 21:09 #9
ok
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