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 :

Problème avec count(distinct)


Sujet :

Requêtes et SQL.

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de habasque
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Septembre 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 530
    Par défaut Problème avec count(distinct)
    Bonjour,

    Je rencontre un problème lorsque je procéde à cette requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT Count(distinct([Extr-1985-1998].Champ1) AS Expr1, Right([Extr-1985-1998]![Champ2],4) AS Annee
    FROM [Extr-1985-1998]
    GROUP BY Right([Extr-1985-1998]![Champ2],4);
    Le message suivant apparaît :
    "Fonction distinct non définie dans l'expression"

    Est-ce que quelqu'un aurait une idée pour corriger cette erreur ? Ou du moins comment utiliser le distinct ?

    Merci d'avance,

  2. #2
    Expert confirmé
    Avatar de vodiem
    Homme Profil pro
    Vivre
    Inscrit en
    Avril 2006
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Vivre
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2006
    Messages : 2 895
    Par défaut
    salut habasque,

    distinct est un prédicat de l'instruction select: il doit donc se trouver directement après le select.
    cf <F1>


  3. #3
    Membre éclairé Avatar de habasque
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Septembre 2006
    Messages
    530
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Septembre 2006
    Messages : 530
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT distinct Count([Extr-1985-1998].Champ1) AS Expr1, Right([Extr-1985-1998]![Champ2],4) AS Annee
    FROM [Extr-1985-1998]
    GROUP BY Right([Extr-1985-1998]![Champ2],4);

    OK mais par exemple en résultat de cette requête, j'obtiens :
    Annee | Expr1
    1985 | 32

    Alors qu'il s'agit de 32 fois de la même valeur du Champ1 !

    Je souhaiterais donc obtenir
    Annee | Expr1
    1985 | 1

  4. #4
    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
    Il faut faire une sous requête qui fait le distinct et ensuite en faire le count

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    110
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 110
    Par défaut
    J'avais le même problème et effectivement faire ça en deux état ressoud le problème.

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

Discussions similaires

  1. [AC-2007] Problème avec COUNT DISTINCT sur plusieurs champs :
    Par Bonero dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 12/10/2012, 14h33
  2. Problème avec le DISTINCT
    Par izou9002 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 26/01/2006, 18h05
  3. Problème avec COUNT
    Par LhIaScZkTer dans le forum Requêtes
    Réponses: 2
    Dernier message: 22/01/2006, 02h16
  4. Access/SQL : Problème avec Count
    Par Taurëndil dans le forum Langage SQL
    Réponses: 2
    Dernier message: 13/01/2005, 15h49
  5. Query sur plusieurs colonnes avec count(distinct...)
    Par Jeankiki dans le forum Langage SQL
    Réponses: 2
    Dernier message: 18/08/2004, 15h22

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