Bonjour, la discussion étant terminée car j'avais résolu mon problème dans la question: "REQUETE AVEC 2 COUNT AVEC 1 CONDITION POUR CHAQUE COUNT", j'ai une petite variante, en insérant une requête conditionnelle plus complexe
La solution proposée par REI ICHIDO (que j'utilise régulièrement depuis) dans le fil cité ci-dessus ne fonctionne pas dans les cas suivants car il doit me manquer quelque chose dans la syntaxe:
Voici ce qui fonctionne:
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT SUM(CASE WHEN MATABLE.MACOLONNE_N1 = <<condition1>> THEN 1 ELSE 0 END) AS cpt1 , SUM(CASE WHEN MATABLE.MACOLONNE_N2 = <<condition2>> THEN 1 ELSE 0 END) AS cpt2 FROM MATABLE
Mais maintenant j'aimerais que la condition soit liée se fasse de la façon suivante: et que je n'arrive pas à faire fonctionner car je reçois le message "Impossible d'exécuter une fonction d'agrégation sur une expression comportant un agrégat ou une sous-requête"
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 SELECT SUM(CASE WHEN MATABLE.MACOLONNE_N1 IN ( SELECT MATABLE.MACOLONNE_N1 FROM MATABLE WHERE MATABLE.COLONNE_X =CONDITION 1, MATABLE.COLONNE_Y=CONDITION 2 (etc.) THEN 1 ELSE 0 END),SUM(CASE WHEN MATABLE.MACOLONNE_N2 IN ( SELECT MATABLE.MACOLONNE_N2 FROM MATABLE WHERE MATABLE.COLONNE_X =CONDITION 3, MATABLE.COLONNE_Y=CONDITION 4 (etc.) THEN 1 ELSE 0 END) FROM MATABLE
Merci
Partager