IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Numérotation du contenu d'un champ dans un état


Sujet :

Access

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 9
    Points : 9
    Points
    9
    Par défaut Numérotation du contenu d'un champ dans un état
    Bonjour,
    Pour faire simple je voudrai que les données d'un champ soient numérotées dans un état:
    à partir d'une table appelée "course", le champ "catégorie" qui n'est pas une clé primaire, (la clé primaire
    est un champ numéroauto) il faut numéroter les 15 différentes catégories indépendamment,
    à savoir que dans la requête principale j'utilise une autre table appelée Catégories avec un seul champ "catégorie"
    qui comporte seulement les 15 catégories.
    C'est un détail accessoire et il y a probablement plusieurs façon d'y arriver, mais je n'y suis pas parvenu
    après multiple essais.
    Voici ce que donne actuellement l'état:
    Nom Prénom Chrono moyenne catégorie
    1 Access Fred 00:34:12 17.9 MS
    2 Excel Fredo 00:34:13 17.9 MS
    3 Word Jules 0035:00 17.7 MC
    4 PowerP toto 0035:40 17.3 MS
    5 Publisher Felix 00:35:45 17.3 MC

    Le résultat recherché:

    Nom Prénom Chrono moyenne catégorie
    1 Access Fred 00:34:12 17.9 MS1
    2 Excel Fredo 00:34:13 17.9 MS2
    3 Word Jules 0035:00 17.7 MC1
    4 PowerP toto 0035:40 17.3 MS3
    5 Publisher Felix 00:35:45 17.3 MC2

    Merci d'avance pour l'aide....

  2. #2
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Ghana

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 109
    Points : 155
    Points
    155
    Par défaut
    Bonjour,

    Si vous voulez traiter la question en SQL je vous propose :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT T_Courses.Num, T_Courses.catégorie, (SELECT Count(*) FROM T_Courses AS TC1  WHERE Num < T_Courses.Num AND Catégorie = T_Courses.Catégorie)+1 AS Clsmt
    FROM T_Courses
    ORDER BY T_Courses.Num;
    ...à adapter naturellement à la requête source de votre état.

    Est-ce le résultat que vous cherchez ?

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Bonjour,
    Merci pour la réponse rapide,
    après adaptation sur la requête source ça donne ceci:

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Dossards10Km.Numero, Course.Nom, Course.Prénom, [Chronos 10Km].TEMPS, Course.catégorie, (SELECT Count(*) FROM Course AS TC1   WHERE Num < Course.Num AND Catégorie = Course.Catégorie)+1 AS Clsmt, Course.Club
    FROM [Chronos 10Km] INNER JOIN (Course INNER JOIN Dossards10Km ON Course.Dossards = Dossards10Km.DOSSARDS) ON [Chronos 10Km].NUMERO = Dossards10Km.Numero
    WHERE ((([Chronos 10Km].TEMPS) Is Not Null))
    ORDER BY [Chronos 10Km].TEMPS;

    Dès le lancement une boite s'ouvre pour demander une valeur de paramètre de num et course.num
    la requête fonctionne sauf pour le champ clsmt, pas d'incrémentation, on reste avec la valeur par défaut 1
    ou celle que l'on rentre.
    Bonne soirée.

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2015
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Ghana

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2015
    Messages : 109
    Points : 155
    Points
    155
    Par défaut
    Bonjour,
    Citation Envoyé par Philippeduchnord Voir le message
    Dès le lancement une boite s'ouvre pour demander une valeur de paramètre de num et course.num la requête fonctionne sauf pour le champ clsmt, pas d'incrémentation, on reste avec la valeur par défaut 1
    ou celle que l'on rentre.
    En fait, dans votre question initiale, les lignes sont numérotées (1,2,3,...) : c'est à partir de ces numéros (que j'ai extrapolés sous le nom "num") que le sql que je vous ai communiqué produit le classement.

    Si vous n'avez pas de champ comparable, quelle valeur voulez-vous utiliser pour baser un classement croissant ?

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2010
    Messages : 9
    Points : 9
    Points
    9
    Par défaut
    Bonjour 3ug3n,
    Après correction la requête donne ceci:
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT Dossards10Km.Numero, Course.Nom, Course.Prénom, [Chronos 10Km].TEMPS, Course.catégorie, (SELECT Count(*) FROM Course AS TC1   WHERE Dossards < Course.Dossards AND Catégorie = Course.Catégorie)+1 AS Clsmt, Course.Club
    FROM [Chronos 10Km] INNER JOIN (Course INNER JOIN Dossards10Km ON Course.Dossards = Dossards10Km.DOSSARDS) ON [Chronos 10Km].NUMERO = Dossards10Km.Numero
    WHERE ((([Chronos 10Km].TEMPS) Is Not Null))
    ORDER BY [Chronos 10Km].TEMPS;
    Il y a du changement, mais le résultat Clsmt est encore anarchique, pas d'ordre croissant mais cela parait impossible de cette façon
    car il y a déjà un ordre croissant avec le champ TEMPS qui est naturellement le plus important (chronométrage), en outre dans
    certaines catégories on ne démarre pas à 1 et des numéros sont manquants ex: 16 17 18 20 21...
    à noter le champ Dossards de la table course ("Course.Dossards") est la clé primaire au format numéroauto.
    Bonne journée.

Discussions similaires

  1. Contenu d'un champ dans une info-bulle
    Par sebinator dans le forum IHM
    Réponses: 2
    Dernier message: 24/12/2007, 13h01
  2. modifie le contenu d'un champ dans une base
    Par oscar.cesar dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 22/10/2007, 23h58
  3. Réponses: 12
    Dernier message: 10/08/2007, 16h45
  4. vba copie contenu d'un champs dans un autre
    Par juju124 dans le forum VBA Access
    Réponses: 1
    Dernier message: 02/05/2007, 18h15
  5. supprimer le contenu d'un champ dans une table paradox
    Par ouldfella dans le forum Bases de données
    Réponses: 1
    Dernier message: 19/04/2006, 14h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo