Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1762 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Problème de requête SQL-Oracle

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème de requête SQL-Oracle

n°1378884
requin15
Posté le 01-06-2006 à 14:23:59  profilanswer
 

Bonjour,
 
voilà la requête qui ne pose pb :
 

Code :
  1. select w.c_current_rating, w.c_previous_rating, 
  2.               (select n.RANG_MOOD from r_note_ref_mo n where n.C_RATING_MOOD(+) = w.C_CURRENT_RATING) CURRENT_RANK,
  3.               (select n.RANG_MOOD from r_note_ref_mo n where n.C_RATING_MOOD(+) = w.C_PREVIOUS_RATING) PREVIOUS_RANK,
  4.                    
  5.                    case
  6.                       when CURRENT_RANK > PREVIOUS_RANK then 'DNG'
  7.                       when CURRENT_RANK < PREVIOUS_RANK then 'UPG'
  8.                       when CURRENT_RANK = PREVIOUS_RANK then Null
  9.                       else
  10.                          null
  11.                    end
  12.            
  13.        from       rdt_fs_histo_mo_w w


 
 
Pourquoi est ce que "PREVIOUS_RANK" n'est pas reconnu ?
 
Merci de votre aide!

mood
Publicité
Posté le 01-06-2006 à 14:23:59  profilanswer
 

n°1379111
Beegee
Posté le 01-06-2006 à 16:47:48  profilanswer
 

Tu ne peux pas utiliser les alias de même niveau.
 
Fais une sous-requête :
 

Code :
  1. select c_current_rating,
  2.        c_previous_rating,
  3.        CURRENT_RANK,
  4.        PREVIOUS_RANK,
  5.        case
  6.          when CURRENT_RANK > PREVIOUS_RANK then 'DNG'
  7.          when CURRENT_RANK < PREVIOUS_RANK then 'UPG'
  8.          when CURRENT_RANK = PREVIOUS_RANK then Null
  9.          else null
  10.        end
  11. from (select w.c_current_rating,
  12.              w.c_previous_rating, 
  13.              (select n.RANG_MOOD from r_note_ref_mo n where n.C_RATING_MOOD(+) = w.C_CURRENT_RATING) CURRENT_RANK,
  14.              (select n.RANG_MOOD from r_note_ref_mo n where n.C_RATING_MOOD(+) = w.C_PREVIOUS_RATING) PREVIOUS_RANK
  15.       from   rdt_fs_histo_mo_w w);

n°1379225
requin15
Posté le 01-06-2006 à 18:31:45  profilanswer
 

waouh :)  
Merci bcp, ça fonctionne super bien! :)

n°1379973
orafrance
Posté le 02-06-2006 à 15:36:42  profilanswer
 

vaut mieux regarder du coté des fonctions analytique comme DENSE_RANK ou LEAD :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Problème de requête SQL-Oracle

 

Sujets relatifs
SQL et LEFT -> erreurProblème: Variable globale
probléme avec AJAX et encodageProblème de sauvegarde des données dans une base sql
probleme de select sous IE[PHP] probleme fsockopen
Problème de transmission des donnéesProblème avec la lib GD
Probleme separation ; dans excel pour csvProblème requête sql base oracle
Plus de sujets relatifs à : Problème de requête SQL-Oracle


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR