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

SQL Oracle Discussion :

ORACLE 9i decode et count


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Décembre 2007
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 213
    Par défaut ORACLE 9i decode et count
    Bonjour à tous,

    je voudrais dans un decode faire le total de ligne en fonction d'un champ s'il est vide ou pas...
    en gros si le champ est saisi je le compte s'il est vide je ne le compte pas...
    j'ai essayé ca..mais ca ne marche pas évidemment

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    select sum(vide), sum(non_vide) 
    from (
    select decode(col, null, count(*), 0) vide,
    select decode(col, not null, count(*), 0) non_vide
    from table
    )
    si vous avez une idée...merci d'avance.


    SAI

  2. #2
    McM
    McM est déconnecté
    Expert confirmé

    Homme Profil pro
    Développeur Oracle
    Inscrit en
    Juillet 2003
    Messages
    4 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Oracle

    Informations forums :
    Inscription : Juillet 2003
    Messages : 4 580
    Billets dans le blog
    4
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    select sum(decode(champ, NULL, 0, 1)) as nb_rempli,
     sum(decode(champ, NULL, 1, 0)) as nb_null,
     count(*) as total
    from matable
    Bien sur tu peux rajouter du group by pour le grouper par colonne.

  3. #3
    Membre éclairé
    Inscrit en
    Décembre 2007
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 213
    Par défaut
    merci pour ta réponse mais...ca ne marche pas...j'ai exactement le meme résultat entre le count pour les null et non null...ce qui est embêtant...une idée ?


    merci en tout cas !!

    Sai

  4. #4
    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,

    La requête de McM me parait très bien, tu peux nous donner un petit jeu de test avec le résultat attendu ?

  5. #5
    Membre éclairé
    Inscrit en
    Décembre 2007
    Messages
    213
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 213
    Par défaut
    bonjour,

    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
    23
    24
     
    cts	vente	duree	kit
    02N66375	3M	24	08CPYJ22
    01N68922	3N	24	
    02N87989	3N	24	
    01NAE630	3N	24	
    01NAH843	3N	24	
    01NAM478	3N	24	08CQWD72
    01NAO531	3N	24	
    01NAP100	3N	24	
    01NAP492	3N	24	
    01NAR818	3N	24	
    01NAV126	3N	24	
    01NAV401	3N	24	
    01NAZ296	3N	24	
    01NAZ375	3N	24	
    01NBF819	3N	24	
    01NBH211	3N	24	
    01NBU628	3N	24	
    01NBZ988	3N	24	
    01NDE458	3Z	24	
    01NDH359	3N	24	08CPDC97
    01NDH655	3N	24	
    01NDI361	3M	24	08CLVX00

    voila la table il me faudrait le total avec kit et sans kit en gros...je sais pas si je m'exprime bien désolé...la requete me semble bonne aussi mais ca ne marche pas...

    edit :
    duree|vente|total avec kit|total sans kit

    edit 2 :

    non j'ai bien vérifier je n'ai pas inversé les 1 et 0...

    merci de votre aide

  6. #6
    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
    Quelle est ta requête et quel est son résultat ?

  7. #7
    Membre chevronné Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Par défaut
    Citation Envoyé par saigon Voir le message
    merci pour ta réponse mais...ca ne marche pas...j'ai exactement le meme résultat entre le count pour les null et non null...ce qui est embêtant...une idée ?


    merci en tout cas !!

    Sai
    tu as pas inverser le 0 et le 1 par hasard ?

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

Discussions similaires

  1. [ORACLE 8i]Decode dans WHERE
    Par jdotti dans le forum Oracle
    Réponses: 9
    Dernier message: 21/12/2005, 12h29
  2. [ORACLE 9i] - Jointure ouverte sur decode
    Par sygale dans le forum Oracle
    Réponses: 3
    Dernier message: 21/04/2005, 16h07
  3. [Oracle 8i] ne garder que certains enregistrements (COUNT ?)
    Par delphim dans le forum Langage SQL
    Réponses: 13
    Dernier message: 23/02/2005, 14h30
  4. l'équivalent de DECODE de Oracle ?
    Par MokhTelnet dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 25/06/2004, 11h19

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