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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [ORACLE] utlisation des alias

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[ORACLE] utlisation des alias

n°2193577
axl the mu​x
Posté le 10-06-2013 à 17:12:04  profilanswer
 

Bonjour,  
 
je voudrais faire ca  
 
select A, (select B from T) as "B" , A-B from C
 
L'idée étant d'utilisé le résultat de mon select B dans le calcul du 3ème champ
 
Est-ce possible ?
 
Comment ?
 
Merci

mood
Publicité
Posté le 10-06-2013 à 17:12:04  profilanswer
 

n°2193579
deliriumtr​emens
sic transit intestinal...
Posté le 10-06-2013 à 17:25:51  profilanswer
 

Ce n'est pas possible dans un  même "niveau" de select.

 

Le seul moyen, pour ne pas réécrire (SELECT B FROM T) serait d'utiliser une sous-requête.

 
Code :
  1. SELECT s.A, s.B, s.A-s.B as 'aMinusB'
  2. FROM (
  3.    SELECT A,
  4.    (SELECT B FROM T) as B
  5.    FROM C) as s
 

(Les alias ne sont pas tous nécessaires, plutôt pour clarifier)


Message édité par deliriumtremens le 10-06-2013 à 17:27:49
n°2193580
toji
i am disappoint
Posté le 10-06-2013 à 17:26:00  profilanswer
 

pas possible car à ce moment là il ne sait pas ce qu'est B.
 
 
tu remets le (select B from T) dans ton 3ème champ, faisant donc A-(Select B from T) mais il faut être sûr que ça ne ramène qu'une seule ligne.

n°2193587
dreameddea​th
Posté le 10-06-2013 à 18:19:41  profilanswer
 

Histoire de faire "propre", faudrait pas juste faire une truc comme ça ?  

Code :
  1. select C.A,T.B,C.A-T.B as 'diff'
  2. from
  3.    C,
  4.    T;


 
Et en plus les C.x et T.y ne sont pas utiles si A n'existe pas dans T et vis-versa
 
Mais je pense qu'il manque une jointure qq part (mais c'est pas dans la requête initiale...
 
Christophe

n°2193688
axl the mu​x
Posté le 11-06-2013 à 08:41:22  profilanswer
 

Merci je vais tester tout ca

 

Pour la derniére je ne peux pas car j'utlise des SUM


Message édité par axl the mux le 11-06-2013 à 08:54:18
n°2193752
dreameddea​th
Posté le 11-06-2013 à 12:17:55  profilanswer
 

heu, si c'est juste un "sum" qui te manque :

Code :
  1. select C.A,TSUM.B,C.A-TSUM.B as 'diff'
  2. from
  3.    C,
  4.    (select sum(X) as B from T) TSUM;


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

  [ORACLE] utlisation des alias

 

Sujets relatifs
[Oracle 10G] UTL_FILE avec requête conséquenteProbleme alias/where
Alias EasyPHP sur lecteur réseau[Apache2] Mon alias me retourne une 403 !
connection à une base Oracle sous java avec JDBCoracle forms 10g
Problème avec oracle express edition[Oracle] User/pass incorrects après full migration...
Afficher une table oracleerreur oracle ora 01406
Plus de sujets relatifs à : [ORACLE] utlisation des alias


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