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 :

Créer un champ incrémenté dans une requête [AC-2003]


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 39
    Points : 28
    Points
    28
    Par défaut Créer un champ incrémenté dans une requête
    Bonjour,

    Je cherche à créer dans une requête un champ qui s'incrémente automatiquement de façon à garder l'ordre dans lequel les données sont parues.

    J'ai trouvé ceci dans le forum :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Select *, (Select Count(*) From LATABLE T2 Where T2.ID=T1.ID And T2.DATE<=T1.DATE) As NUMORDRE
    From LATABLE T1;
    sous Comment, dans une requête, ajouter un champ "ordre" qui s'incrémente pour chaque identifiant ?

    mais je dois avouer que je ne comprends pas le code et je n'arrive pas à le reproduire:

    ID doit être l'identifiant de l'employé, mais T1 et T2?

    Dans "From LATABLE T2" signifie qu'on extrait des données des 2 tables LATABLE et T2? C'est là que je ne comprends pas.

    Voici ma requête:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    SELECT AutresMandants.N°réf AS AfaireA
    FROM AutresMandants
    WHERE (((AutresMandants.N°réf)>"16000") AND ((AutresMandants.Mandant)="BSR"))
    ORDER BY AutresMandants.N°réf;
    où dois-je placer le champ d'incrémentation pour l'obtenir?

    merci d'avance.
    Olivier

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


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

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 617
    Points : 56 722
    Points
    56 722
    Billets dans le blog
    40
    Par défaut
    Bonjour,

    Dans l’expression …FROM LaTable T2,
    T2 est un alias de LaTable.

    Citation Envoyé par Aide Access (F1)
    alias (alias (SQL) : autre nom d'une table ou d'un champ dans des expressions. Les alias sont souvent utilisés pour raccourcir le nom de la table ou du champ pour les références qui y seront faites dans le code, pour éviter d'éventuelles références ambiguës ou pour fournir un nom plus évocateur dans des résultats de requête.
    Si les lignes sont classées par N°Ref, ça pourrait donner :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT T1.N°réf AS AfaireA,
     ( SELECT count(*) FROM AutresMandants T2 
         WHERE (T2.N°Réf>16000 AND T2.Mandant="BSR" 
                     AND T2.N°Réf<=T1.N°Réf )
     ) AS NumOrdre
    FROM AutresMandants T1
    WHERE (T1.N°Réf>16000 AND T1.Mandant= "BSR")
    ORDER BY T1.N°Réf;

    A tester...

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juillet 2007
    Messages : 39
    Points : 28
    Points
    28
    Par défaut
    Merci pour l'explication, j'ai compris l'alias!

    Et effectivement, ça marche!
    Je ne comprends pas bien comment, avec ces 2 alias portant sur la même table, mais c'est pas grave, l'essentiel est que ça marche.

    Merci,
    Olivier

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

Discussions similaires

  1. [AC-2007] Créer un champs séquentiel dans une requête
    Par Daniel-Gérald dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 29/12/2009, 16h27
  2. Créer un champ calculé dans une table
    Par tigevellou dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 21/04/2006, 15h08
  3. Champ calculé dans une requête
    Par HUÏEZ Fabienne dans le forum Access
    Réponses: 3
    Dernier message: 08/12/2005, 12h31
  4. Réponses: 3
    Dernier message: 27/11/2005, 20h57
  5. Nom de champ variable dans une requête SQL
    Par stip dans le forum ASP
    Réponses: 2
    Dernier message: 30/09/2004, 18h02

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