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

Langage SQL Discussion :

Besoin d'aide sur du count


Sujet :

Langage SQL

  1. #1
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 66
    Points : 76
    Points
    76
    Par défaut Besoin d'aide sur du count
    Bonjour,

    Je suis entrain de faire une requete qui compte le nombre de personne d'un foyer et réalise un total en me disant celibataire : 4, couple : 8, etc

    Le problème étant qu'elle est de cette forme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select decode(count(*),'1','celibataire','2','couple') etc
    Seulement je n'arrive pas a grouper mes données à la fin de la requête.
    En effet, je vois client numero 1 : celibataire, 2 couple, 3 celibataire

    Alors que je voudrais celibataire : 5, couple 7, trois personne 6, etc

    Je vois pas comment grouper mes données. je voulais faire group by count(*) mais bien sur il aime pas.

    Merci d'avance

  2. #2
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    1ère intervention :

    1/ SGBD (Oracle j'imagine) et version ?
    2/ donnez-nous la structure de vos tables (code DDL)
    3/ donnez-nous un jeu d'essais représentant ce que vous voulez faire (i.e. vous décrivez le contenu de vos tables puis le résultat de la requête que vous cherchez à construire)

  3. #3
    Membre régulier
    Inscrit en
    Janvier 2004
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 66
    Points : 76
    Points
    76
    Par défaut re
    SGBB : Oracle 10g

    Structure table :

    Un client représente une personne par exemple l'epoux.
    La femme possède le même code mais est différenciée par la fiche incrémentée de 1 et le role

    Par exemple le client 123456 a la fiche 123. Sa femme a le code 123456 et la fiche 124

    Le role : 1 principal
    2 conjoint
    3 enfant, etc

    Client :
    Code
    fiche
    libe
    role



    Jeu d'essai :

    Via une sous requete je selectionne tous les client dont le libe( le nom) est Dupont.
    Puis je voudrais grouper les résultats en fonction du nombre de personne de la famille. Je compte donc les fiches pour chaque client (principal inclus).

    Ainsi, je peux trouver un dupont avec une femme donc 2
    Puis un Dupont avec 3 enfants sans femme donc 4.

    Je veux afficher de cette facon

    celibataire : 1
    couple : 2
    3 personnes 3

    Donc je faisais un

    decode(count(*),'1','une personne' ,'2','deux personnes','3','trois personnes','quatre et plus') nb_pers_foyer.

    Apres je voulais regrouper comme décris ci dessus mais on ne peut grouper par un count group by count(*)

  4. #4
    Membre chevronné

    Profil pro
    Inscrit en
    Avril 2005
    Messages
    1 673
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 673
    Points : 1 775
    Points
    1 775
    Par défaut
    Citation Envoyé par Morphorpse
    Je compte donc les fiches pour chaque client (principal inclus).
    Ainsi, je peux trouver un dupont avec une femme donc 2
    Puis un Dupont avec 3 enfants sans femme donc 4.
    Pour moi, ces 2 idées sont incompatibles voire incohérentes.
    Dupont (= 1) + sa femme (= 2) = 3 mais pas 2
    idem pour le 2ème exemple.

    Néanmoins, j'ai cerné l'idée.
    Je pense pouvoir vous donner une requête qui répond à votre besoin si vous me donnez la structure de votre table et de votre jeu d'essai sous cette forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    CREATE TABLE ... (...);
    INSERT INTO ... (...) VALUES (...);
    INSERT INTO ... (...) VALUES (...);
     
    Résultat attendu :
    NOM / NB_PERS / ...
    ... / ... / ...

Discussions similaires

  1. Besoin d'aide sur une requête (JOIN + COUNT ?)
    Par PanzerKunst dans le forum Langage SQL
    Réponses: 2
    Dernier message: 01/06/2005, 10h29
  2. [D7] Besoin d'aide sur un PChar
    Par bobby-b dans le forum Langage
    Réponses: 6
    Dernier message: 30/06/2004, 16h42
  3. Filemaker ... besoin d'aide sur les Plugin
    Par joange dans le forum Autres SGBD
    Réponses: 3
    Dernier message: 22/04/2004, 10h16
  4. [intermedia] besoin d'aide sur script PL/SQL
    Par SteelBox dans le forum PL/SQL
    Réponses: 8
    Dernier message: 05/01/2004, 19h59
  5. [CR] besoin d'aide sur les formules
    Par GuillaumeDSA dans le forum Formules
    Réponses: 4
    Dernier message: 10/07/2003, 12h19

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