0

テーブルから最大値の合計を取得しようとしています:

select 
  a.sp_capex_01_master_key,
  a.sp_capex_01_master_wbs_id,
  format((
  (
    select
      sum(maxVal)
    from 
      (
        select max(w.sp_capex_01_trans_realisasi) as maxVal 
        from sp_capex_01.sp_capex_01_trans w 
        where w.sp_capex_01_master_wbs_id='P2-14101-01' 
        group by w.sp_capex_01_master_key 
      ) t
  ) / b.sp_capex_01_master_wbs_bud * 100
  ),2) as 'PerBudget'
from sp_capex_01_master a
join sp_capex_01.sp_capex_01_master_wbs b 
  on a.sp_capex_01_master_wbs_id=b.sp_capex_01_master_wbs_id;

値を に設定するとw.sp_capex_01_master_wbs_id='P2-14101-01'、間違った値で結果が得られます。

しかし、これを に変更すると w.sp_capex_01_master_wbs_id=a.sp_capex_01_master_wbs_id、次のエラー メッセージが表示されます。

Error Code: 1054. Unknown column 'a.sp_capex_01_master_wbs_id' in 'where clause'    0.000 sec

最大値の合計を取得するにはどうすればよいですか?

4

1 に答える 1