PB Requete de calcul sous oracle

PB Requete de calcul sous oracle - SQL/NoSQL - Programmation

Marsh Posté le 14-02-2007 à 14:40:37    

Salut
 
Je suis sous oracle et je voudrais effectuer la requetes suivante
 
/* Formatted on 2007/02/14 14:22 (Formatter Plus v4.8.5) */
SELECT COUNT (*)
  FROM (SELECT DISTINCT (zone_gaz.id_zone_gaz) AS zgid,
                        TO_CHAR (centre.centre_code, '000'),
                        TO_CHAR (zone_gaz.zg_code, '00'),
                        zone_gaz.nature_gaz_id,
                        calcul_journalier.calc_date AS datemesure,
                        DECODE
                           (SUM (calcul_journalier.calc_quantite),
                            0, SUM (calcul_journalier.calc_pcs)
                             / (SELECT COUNT (*)
                                  FROM calcul_journalier
                                 WHERE calcul_journalier.zone_gaz_id = zgid
                                   AND calcul_journalier.calc_date >
                                          TO_DATE ('2006-01-02', 'yyyy-MM-dd')
                                   AND calcul_journalier.calc_date <
                                          TO_DATE ('2006-02-01', 'yyyy-MM-dd')),

                              (SUM (  calcul_journalier.calc_pcs
                                    * calcul_journalier.calc_quantite
                                   )
                              )
                            / (SUM (calcul_journalier.calc_quantite))
                           )
                   FROM calcul_journalier, zone_gaz, centre
                  WHERE calcul_journalier.zone_gaz_id = zone_gaz.id_zone_gaz
                    AND zone_gaz.centre_id = centre.id_centre
                    AND calcul_journalier.calc_date >
                                          TO_DATE ('2006-01-02', 'yyyy-MM-dd')
                    AND calcul_journalier.calc_date <
                                          TO_DATE ('2006-02-01', 'yyyy-MM-dd')
               GROUP BY zone_gaz.id_zone_gaz,
                        zone_gaz.zg_lbl,
                        centre.centre_code,
                        zone_gaz.zg_code,
                        zone_gaz.nature_gaz_id,
                        calcul_journalier.calc_date
               ORDER BY calcul_journalier.calc_date DESC)
 
en gros je recupere l'idzg dans le select que je veux utiliser dans mon decode (le code en rouge), le problème c'est qu'il n'arrive pas à reconnaitre idzg. Bref y a t-il un moyen de pouvoir utiliser les resultats du premier select et de les manipuler dans mon coude en rouge?
 
Merci d'avance

Reply

Marsh Posté le 14-02-2007 à 14:40:37   

Reply

Marsh Posté le 14-02-2007 à 15:35:18    

tu ne peux pas utiliser d'alias au même niveau que le niveau de déclaration de l'alias.
 
utilise son vrai nom à la place : zone_gaz.id_zone_gaz

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed