[英]SQL sub-query: select all values but for one type of values only higher than
是否有可能獲得所有貨幣的所有價值,但對於一種特定貨幣,只有那些高於 10000 美元的貨幣?
select case
when currency_id = '57' then 'EUR'
when currency_id = '26' then 'USD'
when currency_id = '51' then 'HKD' end as CCY,
amount, ECPNBR, value_date
from money_transfer
where (select amount from money_transfer where currency_id ='26')>10000 order by amount desc;
這得到錯誤“子查詢返回超過 1 個值...”
也許像下面這樣提出您的查詢
select
case
when m.currency_id = '57' then 'EUR'
when m.currency_id = '26' then 'USD'
when m.currency_id = '51' then 'HKD'
else ''
end,
m.amount, m.ECPNBR, m.value_date
from money_transfer where ( m.currency_id='26' and m.amount>10000) OR (m.currency_id<>'26')
order by m.amount desc;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.