Bonjour,
Si j'ôte le deuxième CASE...END, la requête marche...
Mais avec le deuxième CASE...END (colonne TOTAL), le serveur me dit que la base ne connait pas les champs "ANC_NUM_STUCT" ni "NB_ABD".
Ce sont des alias définis au préalable...
Je sais que ma syntaxe n'est pas bonne, mais je ne trouve pas la solution.
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
25
26
27
28
29 SELECT PA01 AS TYPE_ADH, PA03 AS ANC_NUM_STUCT, COUNT(ADIDEN) AS NB_ADH, CASE WHEN PA01='AD' THEN '15' WHEN PA01='FC' THEN '22,5' WHEN PA01='FS' THEN '22,5' WHEN PA01='PA' THEN '15' WHEN PA01='CS' THEN 'NON-PART_NAT' WHEN PA01='NA' THEN 'NON-PART_NAT' WHEN PA01='AB' THEN 'CETTE VENTE SERA FACTUREE' END AS UNITE_PART_NATIONALE, CASE WHEN PA01='AD' THEN UNITE_PART_NATIONALE*NB_ADH WHEN PA01='FC' THEN UNITE_PART_NATIONALE*NB_ADH WHEN PA01='FS' THEN UNITE_PART_NATIONALE*NB_ADH WHEN PA01='PA' THEN UNITE_PART_NATIONALE*NB_ADH WHEN PA01='CS' THEN '0' WHEN PA01='NA' THEN '0' WHEN PA01='AB' THEN 'A DETERMINER' END AS TOTAL FROM VUE_ADR AA, VUE_CODAD BB, VUE_ADHADM CC WHERE (AA.ADIDEN = CC.ADM_IDEN) AND (AA.ADIDEN = BB.COIDEN) AND (ADM_DDU>'2014-12-31' AND PA03 LIKE '75%') GROUP BY BB.PA01, BB.PA03 ORDER BY BB.PA01, BB.PA03
Partager