Je cherche à combiner les requêtes suivantes en un seul, oùCompliqué MS Access Greatest-N-Per-Groupe problème
- scouting.jumpGate est un entier,
- scouting.astroLoc est une chaîne,
- scouting.ownerguild est une chaîne et
- scouting.galaxy est un entier
qui réticule à une autre table (et est mon groupe):
Select TOP 3
scouting.jumpGate,
scouting.astroLoc,
scouting.ownerGuild,
scouting.Galaxy
FROM scouting
WHERE scouting.Galaxy = 1
AND scouting.ownerGuild = 'TEST'
ORDER BY scouting.jumpGate DESC,
scouting.astroloc DESC;
et
SELECT TOP 3
scouting.jumpGate,
scouting.astroLoc,
scouting.ownerGuild,
scouting.Galaxy
FROM scouting
WHERE scouting.Galaxy = 2
AND scouting.ownerGuild = 'TEST'
ORDER BY scouting.jumpGate DESC,
scouting.astroloc DESC;
et
SELECT TOP 3
scouting.jumpGate,
scouting.astroLoc,
scouting.ownerGuild,
scouting.Galaxy
FROM scouting
WHERE scouting.Galaxy = 3
AND scouting.ownerGuild = 'TEST'
ORDER BY scouting.jumpGate DESC,
scouting.astroloc DESC;
a continué jusqu'à
SELECT TOP 3
scouting.jumpGate,
scouting.astroLoc,
scouting.ownerGuild,
scouting.Galaxy
FROM scouting
WHERE scouting.Galaxy = 79
AND scouting.ownerGuild = 'TEST'
ORDER BY scouting.jumpGate DESC,
scouting.astroloc DESC;
Le code que j'ai généré après avoir lu sur le site Web de Microsoft pour ce grand N par problème Groupe comme suit:
Select scouting.astroLoc,
scouting.galaxy,
scouting.jumpGate,
scouting.ownerGuild
From galaxy Inner Join
scouting On galaxy.[galaxy_ID] = scouting.galaxy
Where scouting.ownerGuild = 'SWARM'
AND (scouting.jumpGate) In (Select Top 3 scouting.jumpGate From scouting Where scouting.galaxy = galaxy.[galaxy_ID] Order By scouting.jumpGate Desc)
Order By scouting.astroLoc Desc,
scouting.jumpGate Desc
Fondamentalement, c'est très proche de ce que je voudrais. Tout semble fonctionner. Cependant, certains GROUPES ne sont pas représentés dans la sortie même après avoir regardé les données, chaque groupe a un enregistrement qui satisfait les contraintes de la requête. Incidemment, si je supprime la contrainte scouting.ownerGuild = 'SWARM', cela fonctionne parfaitement (mais j'ai besoin de cette contrainte).
merci pour le montage - je me suis essayé mais je ne savais pas comment sortir comme layout ce. – jtromans