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 :

Requête créer un champs incrémenté [AC-2019]


Sujet :

Requêtes et SQL.

  1. #1
    Membre habitué Avatar de Superpat9999
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2003
    Messages
    433
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 433
    Points : 188
    Points
    188
    Par défaut Requête créer un champs incrémenté
    Bonjour,
    Je souhaite ajouter un champ qui incrémente ma requête.
    Nom : requete.jpg
Affichages : 109
Taille : 29,2 Ko
    Je ne sais pas quoi inscrire !
    Merci de votre aide
    Le mieux est l'ennemi du bien

  2. #2
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Salut
    Une solution parmi tant d'autres
    A placer en tête de module
    Dans le module
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Function monIncrement(UnChamp) As Long
      i = i + 1
      monIncrement = i
    End Function
    Dans la qry
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT *, monIncrement([ID_City_Fk]) AS Alias
    FROM tCity
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  3. #3
    Membre habitué Avatar de Superpat9999
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2003
    Messages
    433
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 433
    Points : 188
    Points
    188
    Par défaut
    Merci hiperion13,
    J'ai rajouté, pour lancer la requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub ExecuterRequete()
    i = -2
    DoCmd.OpenQuery "t_City Requête", acNormal
    End Sub
    Pourquoi j'ai dû mettre -2 pour démarrer à 0 ?

    Nom : requete1.jpg
Affichages : 74
Taille : 43,7 Ko
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT monIncrement([ID_City_Fk]) AS Alias, t_City.CodePostal, t_City.Ville, *
    FROM t_City
    ORDER BY t_City.CodePostal, t_City.Ville;
    Ta solution fonctionne très bien, mais je me demandais si on pouvait tout mettre dans la requête, et dans ce cas, la réponse serait-elle plus rapide que par une boucle extérieure à la requête.
    La boucle est-elle extérieure réellement, ou incorporée, par "monIncrement", dès le début ?
    Le mieux est l'ennemi du bien

  4. #4
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Bonjour
    Rappelez-moi à quel moment vous indiquez que votre chronologie démarre à zéro.
    D'ailleurs démarrez une série par zéro, le symbole neutre en maths ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SELECT *, monIncrement([ID_City_Fk]) - 1 AS Expr1
    FROM tCity
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  5. #5
    Membre habitué Avatar de Superpat9999
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2003
    Messages
    433
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 433
    Points : 188
    Points
    188
    Par défaut
    Merci hiperion13,
    C'est parfait, je voulais m'en servir dans une liste déroulante, aussi partais-je de zéro (mais je me le gardais pour moi !).
    Tout est OK
    Le mieux est l'ennemi du bien

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

Discussions similaires

  1. [AC-2003] Créer un champ incrémenté dans une requête
    Par oplaut dans le forum Access
    Réponses: 2
    Dernier message: 22/02/2010, 18h30
  2. Réponses: 4
    Dernier message: 09/01/2008, 20h10
  3. Réponses: 8
    Dernier message: 23/03/2007, 01h14
  4. Requêtes : Créer un champ avec x lignes
    Par bleu_ciel dans le forum Access
    Réponses: 3
    Dernier message: 28/05/2006, 22h35
  5. Réponses: 2
    Dernier message: 18/02/2006, 17h07

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