に私はSQL Oracleで異なるフィールドからいくつかの値使用を選択した場合の結果は、他の選択
select
field01
,field02
,case field03
when 'calc1' then field01 - field02
when 'calc2' then field01 + field02
end as AmountCalc
,case AmountCalc
when 0 then 'amount is 0'
else 'Greater than 0'
end as result
from myTable
は、クエリが第二case文でフィールド「AmountCalc」を認識していないcase文で計算する必要があります。
アイデア?
正しいです。これは、SQLがどのように動作するのか、Oracleの動作方法です。列エイリアスは、定義されている同じクエリで再利用することはできません。 –
ケース式であり、ステートメントではありません。 – jarlh