2 votes

Sélectionnez la colonne par une fonction de colonne différente dans la requête Access.

J'ai le tableau suivant dans Access 2010.

EQID Breaker Circuit Rating
1    A       One     1000
2    A       Two     1500
3    A       Three   500
4    A       Four    1000
5    B       One     1500
6    B       Two     2000

Je veux créer une requête pour regrouper par Breaker, et afficher la note minimale et le circuit associé pour cette note. Je comprends comment faire cela sans afficher le circuit pour la note minimale.

Le résultat de ma requête souhaitée serait :

EQID Breaker Circuit Rating
1    A       Three   500
2    B       One     1500

3voto

Tricky12 Points 2812

Essayez ceci :

SELECT a.*
FROM table AS a
INNER JOIN (
    SELECT Breaker, MIN(Rating) AS min_rating
    FROM table
    GROUP BY Breaker
) AS b
ON a.Breaker = b.Breaker AND
   a.Rating = b.min_rating;

SQLFiddle : http://www.sqlfiddle.com/#!2/ea4fb/2

1voto

Anda Iancu Points 530

Vous pouvez essayer ci-dessous:

SELECT t.EQID, t.Breaker, t.Circuit, t.Rating 
FROM test t 
INNER JOIN 
(
  SELECT a.Breaker, MIN(a.Rating) AS Rating 
  FROM test a 
  GROUP BY Breaker
 ) AS tmp 
ON tmp.Breaker = t.Breaker AND tmp.Rating = t.Rating;

Démo Sql fiddle: http://sqlfiddle.com/#!2/fe796/19

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X