Top 5 query

Status
Niet open voor verdere reacties.

RonaldRoenhorst

Gebruiker
Lid geworden
25 dec 2008
Berichten
188
Is het mogelijk om een som te bereken van de hoogste 5 getallen ?

Code:
Startnr	Naam	Merk	Klasse	1	2	3	4	5	6	7	8	9	10	11	12	13	14	15	16	17	18	19	20	21	Bruto
2	Test2			15	22	10	15	11	14	16	18	20	15	0	0	0	0	0	0	0	0	0	0	0	156
1	Test			5	22	10	5	11	14	16	18	20	0	0	0	0	0	0	0	0	0	0	0	0	121
 
Dit lijkt mij een draaitabel. En als dat zo is, heb je de brontabel/query ook, en daar kun je ze makkelijk uithalen.
 
Dat is een beetje lastig zonder voorbeeld van jouw kant. Maar in beginsel maak je een query die met een subquery filtert op het veld met waarden. Die groepeer je dan op de groepen waarvan je de 5 hoogste waarden wilt zien. In jouw geval zou je dan groeperen op Startnummer en Naam, en een subquery maken op het veld [UItslag] met een criterium als: In(Select TOP 5 a.[Uitslag] FROM [Uitslagen] As a WHERE a.[Startnummer]= [Uitslagen].[Startnummer] ORDER BY a.[Uitslag] DESC). Dat levert dan een query op met per deelnemer de 5 hoogste uitslagen. In die query zet je dan een berekend veld dat de rangorde van de uitslag berekent, dus een veld Rang met de waarden 1-5. En daarvan maak je dan een kruistabel query met Rang als kolomkop.
 
Dat is een beetje lastig zonder voorbeeld van jouw kant. Maar in beginsel maak je een query die met een subquery filtert op het veld met waarden. Die groepeer je dan op de groepen waarvan je de 5 hoogste waarden wilt zien. In jouw geval zou je dan groeperen op Startnummer en Naam, en een subquery maken op het veld [UItslag] met een criterium als: In(Select TOP 5 a.[Uitslag] FROM [Uitslagen] As a WHERE a.[Startnummer]= [Uitslagen].[Startnummer] ORDER BY a.[Uitslag] DESC). Dat levert dan een query op met per deelnemer de 5 hoogste uitslagen. In die query zet je dan een berekend veld dat de rangorde van de uitslag berekent, dus een veld Rang met de waarden 1-5. En daarvan maak je dan een kruistabel query met Rang als kolomkop.
 

Bijlagen

Deze tabel is totaal ongeschikt om een top 5 van te maken; mijn queryvoorstel gaat hier inderdaad niet op werken. Je hebt een genormaliseerde tabel nodig, oftwel een tabel met één uitslag per deelnemer per klasse. Jij hebt er nu 21...
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan