J'ai une table appelée prêt avec montant du prêt, revenu annuel, année (format MMM-YY) et ID de membre. J'essaie de trouver le montant du prêt le plus élevé dans une année avec le revenu annuel et les détails d'identification de membre.en utilisant alias pour lancer dans HIVE
J'ai essayé de groupe le montant du prêt le plus élevé par année en utilisant le code
select max(cast(loan_amt as int)),issue_d from loan group by issue_d;
je voulais aussi aller chercher l'identifiant de membre et de l'information sur le revenu annuel j'ai donc écrit le code suivant
mais il est me donner un message d'erreur pour l'utilisation de l'alias pour une colonne qui est cast.
code:
select a.loan_amt,a.member_id,a.annual_inc,a.issue_d
from
(select loan_amt,member_id,annual_inc,issue_d from loan) a
join
(select max(cast(loan_amt as int)) as ml,issue_d from loan group by issue_d) c
where ((a.issue_d=c.issue_d) and (a.loan_amt=a.ml));
est votre code réellement utiliser sur place d'où et c.ml dans la deuxième j oin état? –
Vous demandez de corriger techniquement une mauvaise solution au lieu de demander une bonne solution. –
P.s. MMM-YY est un mauvais design et loan_amt doit être lancé. –