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

  1. #21
    Expert éminent sénior
    (Accessoirement, j'aimerai savoir comment Tofalu a fait la mise en page de son tableau sur son 1er post... )
    Dans des balises code, chaque colonnes séparées par des tabulations

  2. #22
    Membre expérimenté
    Oui, mais non.

    C'est en ligne que je veux mes résultats, pas en colonne (parce que j'ai aussi des catégories de dossiers ):
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Cat	<120	<240	<480	>480
    1	5	2	3	10
    2	0	0	4	9
    3	1	2	0	0
    4	2	3	4	5

    Il faudrait que je sorte un tableau croisé par rapport à ce que tu me proposes
    Je préférerai plus simple dans le SQL.
    [Access] Les bases du débogage => ici

  3. #23
    Expert éminent sénior
    Le nombre de colonne est fixe ?

  4. #24
    Membre expérimenté
    Le nombre de subdivision (<120, <240, ...) oui.
    Les axes (catégories ici, mais il peut y en avoir d'autres : pays, entités ...) sont variables selon ce que choisi l'utilisateur.
    On peut avoir :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Pays	Cat	<120	<240	<480	>480
    FR	1	5	2	3	10
    FR	2	1	3	0	2
    FR	4	2	2	7	0
    IT	2	0	0	4	9
    NZ	3	1	2	0	0
    EU	4	2	3	4	5
    [Access] Les bases du débogage => ici

  5. #25
    Expert éminent sénior
    Mouarf, tu rajoute une hypothèse en plus à chaque message

    Bon, là je vois bien de l'analyse croisée quand même J'ai ajouté le champ pays dans la table des dossiers

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    TRANSFORM Count([idDossier]) AS CompteDeidDossier
    SELECT Pays
    FROM  tblBande, tblDossier
    WHERE TotalTime>=mini and TotalTime<=maxi
    GROUP BY Pays
    PIVOT [LibBande];

  6. #26
    Membre expérimenté
    Oui, j'ai trouvé aussi...
    Ca m'arrange pas des masses : il va falloir que je refasse toute la base de la construction du SQL (sachant que j'ai pas que des pays mais aussi 3 autres axes possibles et que l'utilisateur peut filtrer sur n'importe quel axe et accessoirement quelques autres indicateurs à sortir de la même façon ... ).
    C'est pour ça que le coup du iif m'allait bien : ca rendrait parfaitement dans le moule.

    Merci.
    [Access] Les bases du débogage => ici

  7. #27
    Expert éminent sénior
    Si vraiment tu penses que c'est ce qu'il te faut

    Code sql :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT 
      Pays,
      Count(IIF(totalTime between 0 AND 100,1,NULL)) as "0 - 100",
      Count(IIF(totalTime between 101 AND 200,1,NULL)) as "101 - 200",
      Count(IIF(totalTime >200,1,NULL)) as " +200"
    FROM tblDossier
    GROUP BY PAYS

  8. #28
    Membre expérimenté
    Ah purée ! Le between !
    [Access] Les bases du débogage => ici

  9. #29
    Expert confirmé
    ce n'est pas parceque la rédaction vous propose de passer les alpes comme
    hannibal ou herzog qu'il est interdit de prendre l'avion
    la solution avec une table auxiliaire était infiniment supérieure plus stable et plus modulable
    Elle est pas belle la vie ?

  10. #30
    Expert éminent sénior
    la solution avec une table auxiliaire était infiniment supérieure plus stable et plus modulable
    C'est justement ce que je lui ai conseillé dans mes précédents messages. faut tout lire

  11. #31
    Expert confirmé
    mais j'ai tout lu !
    ma remarque prenait justement en compte ta proposition de table auxiliaire que je trouvais parfaite
    c'est parceque sous la pression tu as donné une solution moins excellente que je me suis permis cette remarque
    courtoisement je n'ajoute pas il faut mieux lire.
    cordialement
    Elle est pas belle la vie ?

  12. #32
    Membre expérimenté
    Je suis tout à fait d'accord sur l'aspect modulable.
    Sur l'aspect stabilité, je vois pas de différence entre les 2 solutions.
    Enfin, quand à l'intégration dans l'existant, la solution sans table est bien plus rapide.
    Surtout qu'avec la solution avec table, je me heurte à d'autres problèmes.
    Par exemple : comment faire pour avoir comme ordre de colonnes :
    "< 2 h" "<4 h" "<1 j" "<2 j"
    et non pas
    "<1 j" "< 2 h" "<2 j" "<4 h"
    comme me sort le transform.
    [Access] Les bases du débogage => ici

  13. #33
    Expert confirmé
    il suffit de préciser pivot into(liste valeurs dans l'ordre) ou de mettre une clause order by sur les en tête de colonne
    le stable est une redondance de modulable j'entends par là qu'un glissement de tranches ne remet pas en cause les requête existantes
    Elle est pas belle la vie ?

  14. #34
    Nouveau Candidat au Club
    Bonjour,

    J'ai un soucis avec une requête de ce type, lorsque aucun enregistrement ne correspond au select, sql me renvoie le msg d'erreur suivant :
    cannot determine datatype of SQL Column : EXP_1

    Est-il possible de contourner ce problème ?

    Merci

    Thierry

###raw>template_hook.ano_emploi###