OVH Cloud OVH Cloud

Définir un rang pour chaque enregistrement

5 réponses
Avatar
YLeg
Bonjour,
Je cherche le moyen, par requete mise a jour, d'indiquer le rang d'un
enregistrement dans un champ de la table.
Par exemple: une table avec les 3 champs (code; Qte; Rang) contenant 3
enregistrements.
code / qte / rang
A / 20 /
B / 15 /
C / 17 /
La requete doit renseigner dans le champ rang
3 pour A
1 pour B
2 pour C

Merci pour votre aide

5 réponses

Avatar
Hervé DUCARNE
Bonjour,

Euh je vois pas l'intéret de faire ça.
Si un jour tu crées un enregistrement D avec 16, qu'advient-il des rangs de
C et A ????

@+

"YLeg" a écrit dans le message de
news:
Bonjour,
Je cherche le moyen, par requete mise a jour, d'indiquer le rang d'un
enregistrement dans un champ de la table.
Par exemple: une table avec les 3 champs (code; Qte; Rang) contenant 3
enregistrements.
code / qte / rang
A / 20 /
B / 15 /
C / 17 /
La requete doit renseigner dans le champ rang
3 pour A
1 pour B
2 pour C

Merci pour votre aide


Avatar
3stone
Salut,

"YLeg"
| Je cherche le moyen, par requete mise a jour, d'indiquer le rang d'un
| enregistrement dans un champ de la table.
| Par exemple: une table avec les 3 champs (code; Qte; Rang) contenant 3
| enregistrements.
| code / qte / rang
| A / 20 /
| B / 15 /
| C / 17 /
| La requete doit renseigner dans le champ rang
| 3 pour A
| 1 pour B
| 2 pour C


Ne pas inscrire cela dans la table...

Utilise une des solutions suivantes dans une requête :
http://www.3stone.be/access/articles.php?lng=fr&pg9


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/
Avatar
Dragan
bonsoir,
essaie peut-être une requête comme celle-ci
SELECT A.code, A.Qte, COUNT(B.code)+1 AS Rang FROM Table1 AS A LEFT JOIN
Table1 AS B ON B.qte<A.qte GROUP BY A.code, A.qte;

Tu fais une jointure de la table sur elle-même, le rang correspond aux
nombres d'éléments +1 dont la quantité est plus petite .
Pour A 20 Il y a 2 éléments plus petit => 2+1 Rang=3
B 15 Il y a 0 élément plus petit => 0+1 Rang=1
C 17 Il y a 1 élément => Rang=2


Bonjour,
Je cherche le moyen, par requete mise a jour, d'indiquer le rang d'un
enregistrement dans un champ de la table.
Par exemple: une table avec les 3 champs (code; Qte; Rang) contenant 3
enregistrements.
code / qte / rang
A / 20 /
B / 15 /
C / 17 /
La requete doit renseigner dans le champ rang
3 pour A
1 pour B
2 pour C

Merci pour votre aide


Avatar
YLeg
OK ça fonctionne
Merci pour ton aide


bonsoir,
essaie peut-être une requête comme celle-ci
SELECT A.code, A.Qte, COUNT(B.code)+1 AS Rang FROM Table1 AS A LEFT JOIN
Table1 AS B ON B.qte<A.qte GROUP BY A.code, A.qte;

Tu fais une jointure de la table sur elle-même, le rang correspond aux
nombres d'éléments +1 dont la quantité est plus petite .
Pour A 20 Il y a 2 éléments plus petit => 2+1 Rang=3
B 15 Il y a 0 élément plus petit => 0+1 Rang=1
C 17 Il y a 1 élément => Rang=2


Bonjour,
Je cherche le moyen, par requete mise a jour, d'indiquer le rang d'un
enregistrement dans un champ de la table.
Par exemple: une table avec les 3 champs (code; Qte; Rang) contenant 3
enregistrements.
code / qte / rang
A / 20 /
B / 15 /
C / 17 /
La requete doit renseigner dans le champ rang
3 pour A
1 pour B
2 pour C

Merci pour votre aide




Avatar
YLeg
OK, je vais utiliser le solution 1
Merci


Salut,

"YLeg"
| Je cherche le moyen, par requete mise a jour, d'indiquer le rang d'un
| enregistrement dans un champ de la table.
| Par exemple: une table avec les 3 champs (code; Qte; Rang) contenant 3
| enregistrements.
| code / qte / rang
| A / 20 /
| B / 15 /
| C / 17 /
| La requete doit renseigner dans le champ rang
| 3 pour A
| 1 pour B
| 2 pour C


Ne pas inscrire cela dans la table...

Utilise une des solutions suivantes dans une requête :
http://www.3stone.be/access/articles.php?lng=fr&pg9


--
A+
Pierre (3stone) Access MVP
Perso: http://www.3stone.be/
Conseils MPFA: http://www.mpfa.info/