Récupérer les 5 premiers

Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015 - 14 mai 2009 à 13:11
Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015 - 18 mai 2009 à 11:58
Salut

J'ai "vraiment" fouillé partout mais je n'ai pas trouvé comment recupérer les 5 premiers d'une table et les afficher dans un DataGrid connecté à un Adodc

Table : Statistiques (Client, Montant)

Client | Montant
-------------------------
Moi | 50
Toi | 100
Lui | 75
Eux | 23
Elle | 15
Toto | 76
Tata | 80
Titi | 0
Lulu | 113
Lola | 100

Mon tableau doit afficher donc :

Client | Montant
-------------------------
Lulu | 113
Lola | 100
Toi | 100
Tata | 80
Toto | 76

Pouvez vous m'aider svp ? C'est la dernière option de mon projet a rendre pour le BTS et me voilà bloqué très sérieusement. J'ai besoin de votre aide.

Merci de m'aider

7 réponses

Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015
14 mai 2009 à 13:18
Salut
J'ai "vraiment" fouillé partout mais je n'ai pas trouvé comment récupérer les 5 premiers d'une table et les afficher dans un DataGrid
connecté à un Adodc

Table : Statistiques (Client, Montant)

Client |
Montant
----------------
Moi    | 50
Toi    | 100
Lui    | 75
Eux    | 23

Elle   | 15
Toto   | 76
Tata   | 80
Titi   | 0
Lulu   | 113
Lola   | 100

Mon
tableau
(DataGrid)

doit
afficher donc :


Client |
Montant

----------------


Lulu   | 113
Lola   | 100
Toi    | 100
Tata   | 80
Toto   | 76

Pouvez vous m'aider
svp ? C'est la dernière option de mon projet a rendre pour le BTS et me
voilà bloqué très sérieusement. J'ai besoin de votre aide.

Merci de
m'aider
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
14 mai 2009 à 13:40
SELECT TOP 5 ... FROM ....
0
Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015
18 mai 2009 à 11:19
Salut !

Alors voilà, j'ai essayé mais une erreur sous VB6 se fait entendre.
J'ai donc fais cette requête :
SELECT TOP 5 Client, SUM(NetAPayer) AS NetAPayer
FROM Facture
GROUP BY Client
ORDER BY SUM(NetAPayer) DESC

Là j'arrive à faire la somme du NetAPayer, de grouper le client, de mettre en ordre décroissant pour avoir le montant le plus grand au plus petit, mais il ne sélectionne pas les 5 premiers clients.
Je suis planté et n'arrives pas a avancer. Avez vous une solution svp ?

Merci

----------
OS        : Windows XP SP3 et Vista 32
Platforme : VB 6.0 + SP6
Ok VB6.0 c'est pas net !
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
18 mai 2009 à 11:29
SUM(NetAPayer) AS NetAPayer

pas top de mettre le meme nom...

executant ta requete sous access, on obtient l'erreur:

"reference circulaire causée par l'alias 'NetAPayer' dans la liste SELECT de definition de la requete"

est-ce bien l'erreur que tu obtiens ?

j'ai fait:
SELECT TOP 5 Client, SUM(NetAPayer) AS Sum_NetAPayer
FROM Facture
GROUP BY Client
ORDER BY SUM(NetAPayer) DESC

et ça roule...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015
18 mai 2009 à 11:41
La requête s'exécute tout comme mon premier test mais il ne me sélectionne pas les 5 premiers mais toute la liste... donc toujours même problème :s

Pour l'erreur, je passe dorénavant sous la propriété RecordSource du Adodc et donc il accepte les requêtes que la propriété du DataEnvironnement > Connection > Table refuse.
Sinon j'avais au départ une erreur sur le Top 5 (Erreur dans la clause SELECT : expression proche de '5'
Clause FROM absente
Erreur dans la clause SELECT : expression proche de ','
Impossible d'analyser le texte de la requête)

Mais dès que j'enlève le TOP 5 tout rentre dans l'ordre.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
18 mai 2009 à 11:46
tu joues pas avec Access, si ?

a voir si ton SGBD prefere :

LIMIT 0,5

(a voir la syntaxe)http://www.vbfrance.com/g/forum/ajouter.gif
0
Sinsitrus Messages postés 849 Date d'inscription samedi 11 juin 2005 Statut Membre Dernière intervention 21 août 2015
18 mai 2009 à 11:58
Non il prefere pas, il accepte Top 5 mais ne l'exécute pas. Le Limit est cérément refusé.
0
Rejoignez-nous