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

Requêtes et SQL. Discussion :

chercher le 2ème enregistrement suivant un critère [AC-2003]


Sujet :

Requêtes et SQL.

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2013
    Messages : 116
    Par défaut chercher le 2ème enregistrement suivant un critère
    Bonjour,

    J'ai un projet sur lequel je travail qui consiste à gérer un concours de tir sportif.

    J'aimerais savoir comment faire pour trouver un enregistrement dans une table en fonction de plusieurs critères bien précis.

    J'ai plusieurs champs dans ma table qui sont très dimensionnant.
    distance, catégorie, discipline, Total, Série 1, Série 2 ,Série 3, code_classement...

    Je souhaiterais pouvoir trouver (je ne sais pas encore sous quel forme, état ou formulaire) le 1er ou le 2ème ou 3ème enregistrement (ce résultat serait évidement par rapport à code_classement dans un ordre décroissant) suivant des critères que j'aurais renseigner avant (catégorie, distance, discipline)

    Je ne sais pas comment faire.

    Merci pour votre aide précieuse.

  2. #2
    Expert éminent

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Par défaut
    Le mot clé TOP dans la clause SELECT d'une requête permet de retourner un nombre déterminé de lignes.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT TOP 10 MonChamp1,MonChamp2 FROM MaTable
    retournera les 10 premiers.

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2013
    Messages : 116
    Par défaut
    Bonjour tofalu,

    Par contre si je veux trouver uniquement le 2ème sans avoir le 1er ?

    Est ce que c'est possible?

  4. #4
    Membre chevronné
    Inscrit en
    Février 2011
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 469
    Par défaut
    Bonjour,
    Sur la base de la requete de tofalu, tu peux en ajouter une seconde.
    La première requete de tofalu avec un TOP 2
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT TOP 2 MonChamp1,MonChamp2 FROM MaTable
    une seconde requete basée sur la première :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Last(Query1.MonChamp1) AS LastOfMonChamp1, Query1.MonChamp2 
    FROM Query1
    GROUP BY Query1.MonChamp1;
    à tester....

  5. #5
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    13 206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 13 206
    Billets dans le blog
    48
    Par défaut
    Bonjour,

    Pour chercher le 1er, 2e, 3e, ... il faut commencer par établir un classement. Tu peux t'inspirer de : Classer les résultats d'une requête.

    Voir également : Calculer un rang par catégorie

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Novembre 2013
    Messages : 116
    Par défaut
    OK
    Merci pour vos réponse tout marche très bien.
    Cependant j'ai omis de préciser une chose lors de l’énoncé du premier message.

    alors en fait ce trie doit être fait par club.
    je doit trouver les 'X' meilleurs de chaque club (champ "club") dans la catégorie senior 1 ou senior 2 ou senior 3 (champ "catégorie") qui tir dans la discipline pistolet ou carabine ou arbalète (champ "discipline")...

    Pour expliquer de manière compliquée.
    J'ai une table qui reprend environ 200 enregistrements (une pour chaque tireur inscrit au concours)
    Dans cette table nous retrouvons environ 20 champs (num_inscription, nom, prénom, club, distance, catégorie, discipline, le score de chaque tireur, tarif_inscription.....).

    Pour pouvoir finir mon boulot il faut que je trouve un moyen de gérer le classement des trophées spéciaux.
    Il existe plusieurs trophées différents.

    J'aimerais gérer ces trophées par un formulaire dans lequel je choisirais les critères que j'ai envie.
    J'enregistrerais ces critères dans une table (tblchallspeciaux)
    Ces critères seraient pour le 1er challenge
    - les 'X' meilleurs tireurs (de chaque club) qui tir à la carabine ou pistolet dans les catégories seniors 1 ou seniors 2 ou seniors 3.
    - Ensuite les 'X meilleurs tireurs ( de chaque club) qui tir à la carabine ou pistolet dans la catégorie cadet ou juniors

    Le résultat souhaité est le suivant:
    Il faut qu'il me fasse un classement par club.
    Dans chaque club il faut retrouver les 'X' meilleurs tireurs (suivant les critères choisi ci-dessus) avec leur score.
    ensuite il faut additionner tous ces scores pour faire le total des points par club (c'est ce qui me permettra de faire le classement par club).

    Je ne sais pas si j'ai été très clair...

    Mais la pour le moment je suis dans une impasse....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] chercher cellule vide , enregistrer et passer à la suivante
    Par Merryy dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/07/2015, 11h38
  2. Réponses: 8
    Dernier message: 27/11/2012, 11h16
  3. Chercher Enregistrement suivant
    Par pafi76 dans le forum VBA Access
    Réponses: 8
    Dernier message: 14/06/2007, 17h37
  4. [VBA]Compter les enregistrement suivant critère d'un champs
    Par wachoo31 dans le forum VBA Access
    Réponses: 9
    Dernier message: 27/04/2007, 07h42
  5. Réponses: 16
    Dernier message: 25/03/2007, 09h56

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