Naam zoeken bij max waarde prijs van een speler

Status
Niet open voor verdere reacties.

VBAJAAP

Gebruiker
Lid geworden
14 aug 2013
Berichten
46
Beste Lezers,

Ik ben bezig met het opzetten van een database voor het bijhouden van de voetbalresultaten ivm een voetbalpoule.
Ik gebruik deze database ook een beetje als oefendingetje voor het bijspijkeren en leren van VBA e.d.
Ik loop nu tegen een probleempje aan waar ik zelf niet helemaal uit kom. Wellicht kan iemand me helpen:

Ik heb een tabel gemaakt met daarin oa de volgende velden:

Club (gekoppeld aan een tblClubs met daarin verdere clubgegevens)
Achternaam
Prijs (=waarde van de speler)

Ik heb een query gemaakt die van elke club de totale waarde van de spelers weergeeft.
De hoogste waarde van een speler van de desbetreffende club

De wens is nu om de juiste speler (achternaam) van elke club met de hoogste waarde weer te geven.
Dit lukt me niet. Ik zit zelf te denken aan een soort constructie met de functie Max of Dmax, maar dit krijg ik niet werkend.

Voor het gemak heb ik de database even bijgevoegd.
(qryWaardeSpelers)

Groeten,

Jaap
 

Bijlagen

  • ScoritoVoorbeeld.zip
    56,2 KB · Weergaven: 10
Iets te snel hulp gezocht

Beste Lezers,

Ik vrees dat ik iets te snel de handdoek in de ring heb gegooid.

Via onderstaand linkje heb ik (alsnog) een duidelijke uitleg gevonden:

http://www.techonthenet.com/access/queries/max_query2_2007.php

Als ik het goed begrijp wordt in een soort twee traps raket een query losgelaten op de tabel waarin de hoogste waarde van een speler wordt bepaald. Door een join toe te passen tussen de eerste query en de tabel, waarbij alleen de records met de hoogste waardes worden weergegeven verschijnt het gewenste resultaat !
 
Kan makkelijk in één query; als ik morgen tijd heb zal ik je hem laten zien.
 
Ik vind het resultaat van je 'tweetrapsraket' niet bepaald geweldig; ok, je hebt een query met daarin van elke club één speler die dan het duurste zou zijn. Maar waar baseer je dat op? In je tabel heb je verschillende spelers van een club die hetzelfde kosten. Bij NEC bijvoorbeeld kosten 6 spelers € 1.750.000,00 (nog veel, als je het mij vraagt ;) ). En jij hebt bepaald dat Bikel dan de duurste is? Waarom niet Breinburg of Ofosu?
 
En ik had je nog de query beloofd waarbij het in één keer kan (en waarbij je dus óók ziet dat meer spelers voldoen aan een max criterium) hier de SQL:
PHP:
SELECT Naam, Clubnummer, Spelernummer, Achternaam, Prijs
FROM tblClubs INNER JOIN tblSpelers ON tblClubs.Clubnummer = tblSpelers.Club
WHERE (Spelernummer In (SELECT TOP 1  Spelernummer FROM tblSpelers AS Dupe WHERE Dupe.Club = tblSpelers.Club ORDER BY Dupe.Prijs DESC));
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan