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 :

Count de Count


Sujet :

Langage SQL

  1. #1
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 85
    Par défaut Count de Count
    Bonjour, tout d'abord, je vous donne un apperçu de ma requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    select count(adl.adl_nom)
    from opa_adl adl , opa_type_ads tads, opa_ads ads, opa_ulm ulm
     
    where bat_id=5
    and adl.adl_id = ads.adl_id
    and tads.tas_id = ads.tas_id
    and adl.adl_id=ulm.adl_id
    and tas_haut_utile > 1800
    and convert(char(8),ulm_dh_sortie,112) is NULL
    and ulm.ulm_haut<=1200
     
    group by adl.adl_nom
    Celle-ci va me renvoyer un grand tableau de 3600 lignes sur une colonne ou il n'y aura que des 1 ou des 2, ce que je voudrais faire, c'est faire le compte des 1 et le compte des 2... est ce que vous auriez une chtiote idée

    Merci d'avance

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 139
    Par défaut
    Il suffit d'en rajouter une couche !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    SELECT  tot.nb
        ,   COUNT(*)
    FROM    
        (   SELECT  COUNT(*)    AS nb
            FROM    opa_adl     AS adl
                INNER JOIN 
                    opa_ads     AS ads
                    ON  adl.adl_id = ads.adl_id
                INNER JOIN 
                    opa_type_ads AS tads
                    ON  tads.tas_id = ads.tas_id
                INNER JOIN 
                    opa_ulm     AS ulm
                    ON  adl.adl_id = ulm.adl_id
            WHERE   bat_id = 5
                AND tas_haut_utile > 1800
                AND convert(char(8),ulm_dh_sortie,112) IS NULL
                AND ulm.ulm_haut <= 1200
            GROUP BY adl.adl_nom
        )   AS tot
    GROUP BY tot.nb
    ;
    PS : Avec des jointures normalisées, la requête est bien plus jolie
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre Expert Avatar de Yanika_bzh
    Homme Profil pro
    Responsable Applicatif et R&D
    Inscrit en
    Février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 1 144
    Par défaut
    Autant pour moi, j'avais mal lu l'énoncé du problème.
    je plussois donc al1_24 sur sa solution

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 85
    Par défaut
    Merci beaucoup, j'ai encore un chti souci, c'est quand je lance la requête il me dit "incorrect syntax near Keyword Select"

  5. #5
    Membre Expert Avatar de Yanika_bzh
    Homme Profil pro
    Responsable Applicatif et R&D
    Inscrit en
    Février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 1 144
    Par défaut
    Post ta requete (si elle ne fait pas 2000000 lignes)

  6. #6
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 85
    Par défaut
    C'est celle du dessus faite par Al1

  7. #7
    Membre chevronné Avatar de chrifo
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    444
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 444
    Par défaut
    Bonjour,
    Quel est votre SGBD ? accepte-t-il les jointures normalisées ?

  8. #8
    Membre Expert Avatar de Yanika_bzh
    Homme Profil pro
    Responsable Applicatif et R&D
    Inscrit en
    Février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 1 144
    Par défaut
    tu as fait un copié collé ? ou tu l'as retapée ?

  9. #9
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 85
    Par défaut
    Mon SGBD est Apache, et j'ai fait un copier coller mais après j'ai modifié la syntaxe et j'ai essayé avec et sans les jointures normalisées, rien à faire, il aime pas du tout

  10. #10
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 139
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 139
    Par défaut
    Citation Envoyé par Tiresia
    Mon SGBD est Apache
    Je ne connais pas ce SGBD
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  11. #11
    Membre Expert Avatar de Yanika_bzh
    Homme Profil pro
    Responsable Applicatif et R&D
    Inscrit en
    Février 2006
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Responsable Applicatif et R&D
    Secteur : Finance

    Informations forums :
    Inscription : Février 2006
    Messages : 1 144
    Par défaut
    Apache n'est pas un SGBD !

  12. #12
    Membre émérite
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    868
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2007
    Messages : 868
    Par défaut
    Apache est ton serveur web, il risque donc de ne pas avoir grand rapport avec le SGBD.

  13. #13
    Membre confirmé
    Inscrit en
    Mai 2007
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 85
    Par défaut
    En effet, j'ai été distraite je sais plus ce que je raconte , je suis fatiguée à force ^^ mon SGBD est Oracle

  14. #14
    Membre Expert

    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
    Par défaut
    Formidable et au bout de 10 posts on aura peut être notre info COMPLETE

    Oracle ne supporte les jointures dans la clause FROM qu'à partir de la version 9i (incluse).
    Quelle est votre version d'Oracle ?

Discussions similaires

  1. count et count (colonne)
    Par zin_rbt dans le forum Langage SQL
    Réponses: 2
    Dernier message: 05/03/2010, 22h22
  2. select count> select count
    Par supernicoco dans le forum Langage SQL
    Réponses: 3
    Dernier message: 15/10/2009, 10h17
  3. optimisation count(*) vs count(champs)
    Par oadin dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 21/03/2008, 11h04
  4. différence entre count(*) et count(1)
    Par dylane.sof dans le forum SQL
    Réponses: 7
    Dernier message: 04/10/2007, 22h04
  5. Requete SELECT Count(x)/Count(y)
    Par ahage4x4 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 21/06/2006, 16h26

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