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 :

manque un mois dans tableau croisée dyn


Sujet :

Requêtes et SQL.

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 32
    Points : 23
    Points
    23
    Par défaut manque un mois dans tableau croisée dyn
    Salut à tous,

    j'ai une requête qui donne comme résultat un tableau croisée dynamique me permettant de calculer la répartition des infections suivant les mois de l'année.

    voici mon problème :

    au mois de janvier et au mois d'Août, il n'y en a aucune. Le tableau zappe complètement ces deux mois au lieu de me mettre zéro comme résultat.

    Y-a-t-il un moyen de faire afficher les mois pour lesquels il n'y a aucune valeur en retour.

    voici ma requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    TRANSFORM IIf(IsNull(Count(BDD_IN.[Type d'infection])),0,Count(BDD_IN.[Type d'infection])) AS CompteISO
    SELECT (Format([Date_prélèv],"mmmm"" '""yy")) AS [Date]
    FROM BDD_IN
    WHERE (((BDD_IN.[Type d'infection])="Infection du site opératoire") AND ((BDD_IN.IN_etb)="1"))
    GROUP BY (Year([Date_prélèv])*12+Month([Date_prélèv])-1), (Format([Date_prélèv],"mmmm"" '""yy")), BDD_IN.IN_etb
    PIVOT BDD_IN.Précision_type_IN;
    Merci

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    PIVOT BDD_IN.Précision_type_IN in (1,2..12);

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 32
    Points : 23
    Points
    23
    Par défaut
    Désolé mais cela ne donne rien, au contraire.

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    En fait il faut écrire en entier :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PIVOT x IN (1,2,3,4,5,6,7,8,9,10,11,12)
    et ne pas mettre de points de suspension...

  5. #5
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 32
    Points : 23
    Points
    23
    Par défaut
    Oui, oui, j'avais bien compris qu'il fallait tout écrire, mais le problème est que ce n'est pas sur "Précision_type_IN" que le pivot doit être mis mais sur la date.

    Rappel : ma requête fonctionne mais les mois pour lesquels il n'y a pas de données sont absent du tableau de résultat donc j'ai un trou lorsque je veux en faire un graphique.

    Merci de vous acharner sur mon cas !!!

  6. #6
    Expert éminent sénior
    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    Bjr,

    Il faut être plus précis.
    La solution proposée résoud les problèmes de colonnes manquantes.
    Est-ce que les mois qui te manquent sont en ligne?
    Si c'est le cas il te faut une table des mois sur laquelle tu fais une jointure.
    Le SQL n'est pas capable de "boucher les trous".

  7. #7
    Membre à l'essai
    Inscrit en
    Janvier 2004
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 32
    Points : 23
    Points
    23
    Par défaut
    Réponse à : Arkham46

    Oui, effectivement, les mois sont en ligne.

    Ta solution est un peu compliqué pour moi qui ne suis qu'un débutant.

    Je vais néanmoins essayer, mais je maîtrise moins les jointures et encore moins le fait de les utiliser dans une requête.

Discussions similaires

  1. Totaux dans tableau croise dynamique
    Par evasion dans le forum QlikView
    Réponses: 2
    Dernier message: 09/07/2014, 10h12
  2. Somme des lignes dans tableau CROISE DYNAMIQUE
    Par maeva13 dans le forum QlikView
    Réponses: 7
    Dernier message: 24/10/2011, 18h22
  3. Réponses: 2
    Dernier message: 09/01/2009, 17h49
  4. [VBA-W2007]masquer un champ dans un tableau croisé dynamique
    Par tazamorte dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 24/08/2007, 11h25
  5. [VBA-E] Tableau Croise Dynamique données dans table access
    Par winner103 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 06/11/2006, 12h49

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