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

MS SQL Server Discussion :

[debutant]select count ?


Sujet :

MS SQL Server

  1. #1
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 69
    Par défaut [debutant]select count ?
    Bonjour,

    J'ai un petit souci au niveau de la construction d'une requete avec count ?

    J'ai 3 tables
    PERSONNE, LANGUE, LANGUE_CONN

    PERSONNE:
    PERSON_ID => INT
    Nom => varchar
    Prenom => varchar

    LANGUE:
    Langue_ID => int
    description => varchar

    LANGUE_CONN:
    conn_id => int
    personn_ID => int => foregin key personne
    langue => int => foregin key langue
    maternelle => int

    pour toutes les langues, je dois compte le nombre de personne parlant cette langue ...?!

    Je sais qu'il faut que j'utilise in count mais je n'y arrive pas !!!

    Voila ce que j'ai fait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    SELECT --COUNT(PERSONNE.Person_ID)as Nbre,
    LANGUE.Langue_ID, LANGUE.Description_FR,
    LANGUE_CONN.LANGUE, LANGUE_CONN.Parle,
    PERSONNE.Person_ID, PERSONNE.Nom, PERSONNE.Prenom
    FROM LANGUE
    INNER JOIN LANGUE_CONN
    ON LANGUE.Langue_ID = LANGUE_CONN.LANGUE
    INNER JOIN PERSONNE
    ON PERSONNE.Person_ID = LANGUE_CONN.Person
    ORDER BY PERSONNE.Nom
    Malheureusement j'obtiens toujours le meme message :

    Column 'LANGUE.Langue_ID' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause.


    Je vous remercie
    Christophe

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Mars 2002
    Messages
    1 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 1 184
    Par défaut
    Il faut effectuer un group by et regrouper par personne

    La requête principale est donc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Select Count(*) 
    From LANGUE_CONN
    Group By personn_ID
    Ensuite il faut établir une jointure avec les deux autres tables pour afficher les libellés

  3. #3
    Membre confirmé
    Inscrit en
    Mars 2008
    Messages
    69
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 69
    Par défaut
    Salut salut,

    ok merci pour l'information j'ai bien avance !

    je suis vraiment null mais null :-)

    Merci
    Christophe

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

Discussions similaires

  1. [Java][debutant]select count(*) ne retourne rien !!
    Par Invité dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 24/01/2007, 11h39
  2. [Performance] RecordCount ou select Count(champ) ?
    Par shwin dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 28/09/2004, 17h37
  3. [debutant] selection des 6 derniers enregistrements
    Par LoLoSS dans le forum Langage SQL
    Réponses: 4
    Dernier message: 09/07/2004, 15h27
  4. résultat de " select count "
    Par marie253 dans le forum Bases de données
    Réponses: 3
    Dernier message: 17/06/2004, 12h07
  5. [DEBUTANT] select vertical
    Par ericmart dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/01/2004, 22h25

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