MizzKMedlem sedan juni 2003410 inlägg Hur gör jag för att få fram top5 bästa poängen från en ensild individ..
har testa detta men tar bara fram de 5 första från den individen, inte dom 5 högsta poängen..
SELECT TOP 5 Utst_resultat.poang
FROM Utst_resultat
WHERE (((Utst_resultat.hundNr)=11));
@ndersMedlem sedan juni 200032 969 inlägg Utan ORDER BY ger inte TOP speciellt mycket.
Varför har du hundratals parenteser i din WHERE-sats?
Passar också på att peka med hela handen mot SQL-forumet.
mozillaMedlem sedan juli 20011 084 inlägg Som anders säger... kanske så här:
SELECT TOP 5 Utst_resultat.poang
FROM Utst_resultat
WHERE (((Utst_resultat.hundNr)=11)) (ORDER BY (((Utst_resultat).poang)));
:P
MizzKMedlem sedan juni 2003410 inlägg tack fungerar, men nu vill jag summera top 5 poängen för varje hund hur gör man då?
Peter SMedlem sedan dec. 20025 483 inlägg select hundnr
, sum(poang)
from utst_resultat u
where poang
in (select top 5 poang
from utst_resultat
where hundnr = u.hundnr
order
by poang desc)
group
by hundnr
MizzKMedlem sedan juni 2003410 inlägg tack fungerar bra men går de att koppla till tabellen hund som innehåller hundnamn, hundnr och kon? dvs me en inner join? försökte men gick inte =/
Peter SMedlem sedan dec. 20025 483 inlägg Vad försökte du med?
select u.hundnr
, h.hundnamn
, h.kon
, sum(u.poang)
from utst_resultat u
inner
join hund h
on u.hundnr = h.hundnr
where poang
in (select top 5 poang
from utst_resultat
where hundnr = u.hundnr
order
by poang desc)
group
by u.hundnr
, h.hundnamn
, h.kon
MizzKMedlem sedan juni 2003410 inlägg jepp men fick fel.
De är så att egenligen vill jag ha in den andre koden i denna koden.. om de går annars får jag hitta på ngt annat =D..
SELECT Sum(Utst_resultat.poang) AS p, Count(utstnr) AS antutst, Hund.hundnamn, Hund.kon
FROM Utst_resultat INNER JOIN Hund ON Utst_resultat.hundNr = Hund.hundnr
GROUP BY Hund.hundnamn, Hund.kon, Utst_resultat.hundNr
HAVING (((Sum(Utst_resultat.poang))<>0) AND ((Hund.kon)='T'))
ORDER BY Sum(Utst_resultat.poang) DESC;
Peter SMedlem sedan dec. 20025 483 inlägg Vad får du för fel då?
select u.hundnr
, h.hundnamn
, h.kon
, sum(u.poang)
from utst_resultat u
inner
join hund h
on u.hundnr = h.hundnr
where h.kon = 'T'
and poang
in (select top 5 poang
from utst_resultat
where hundnr = u.hundnr
order
by poang desc)
group
by u.hundnr
, h.hundnamn
, h.kon
MizzKMedlem sedan juni 2003410 inlägg The specified fiels 'hundnr' could refer to mor than one tabel listed in the FROM clause of your SQL statment
Peter SMedlem sedan dec. 20025 483 inlägg Då får du kvalificera de förekomster av kolumnnamn som inte är det.
MizzKMedlem sedan juni 2003410 inlägg och med de menar du? vet du hur jag kan slå ihop din sql sats med min?
Peter SMedlem sedan dec. 20025 483 inlägg select u.hundnr
, h.hundnamn
, h.kon
, sum(u.poang)
from utst_resultat u
inner
join hund h
on u.hundnr = h.hundnr
where h.kon = 'T'
and u.poang
in (select top 5 ur.poang
from utst_resultat ur
where ur.hundnr = u.hundnr
order
by ur.poang desc)
group
by u.hundnr
, h.hundnamn
, h.kon
MizzKMedlem sedan juni 2003410 inlägg Fungerar, MEN alla syns inte i resultatet av ngn anledning...
Peter SMedlem sedan dec. 20025 483 inlägg Kan du ge exempel på vad som finns i dina tabeller, samt vilket resultat du förväntar dig?
MizzKMedlem sedan juni 2003410 inlägg hittade felet, dumma jag tänkte inte på att villkorer var kon=T. Men går det att i samma sql sats även räkna ut summan av alla tävlingar? så att jag får ut ett svar med ytterligare en kolumn som innehåller själva totala poängen?
dvs detta vill jag ha!
hundnamn top5poäng totpoäng antal utst
Ture 15 45 2
tabeller hund
hundnr
hundnamn
tabell resultat
hundnr
utstnr
poang
tabell uställning
utst
ort
Peter SMedlem sedan dec. 20025 483 inlägg Då skulle det kunna se ut så här:
select u.hundnr
, h.hundnamn
, sum(u.poang)
, (select sum(utr.poang)
from utst_resultat utr
where utr.hundnr = u.hundnr) as total
from utst_resultat u
inner
join hund h
on u.hundnr = h.hundnr
where u.poang
in (select top 5 ur.poang
from utst_resultat ur
where ur.hundnr = u.hundnr
order
by ur.poang desc)
group
by u.hundnr
, h.hundnamn
Red./ Såg att du ej ville ha med vilket kön hunden har. Vill du ej heller ha med hundnumret kan du stryka det från SELECT- och GROUP BY-satserna.
MizzKMedlem sedan juni 2003410 inlägg på vissa ställen vill jag ha de och vissa inte =D.. tusen tack för hjälpen!!!
Peter SMedlem sedan dec. 20025 483 inlägg :bire
Glöm inte att acceptera som slutgiltigt det svar som löste problemet.
MizzKMedlem sedan juni 2003410 inlägg förrästen hur får jag in antalet utst? dvs utstnr som varje hundnr har?