как транспонировать - PullRequest
0 голосов
/ 14 мая 2019

DB: Oracle

У меня есть несколько полей,

account cost1 cost2 cost3 cost4 cost5
10       $20   $30   $40   $50   $60
20       $100   $200  $300  $400 $500

Требование:

  • если на счете 10, тогда мне нужны только стоимость1 и стоимость3

  • если на счете 20, тогда мне нужны только стоимость2 и стоимость4

результат должен быть примерно таким,

20----10
40----10
200----20
400----20

есть предложения?

1 Ответ

2 голосов
/ 14 мая 2019

Использование union all:

select account, cost1 as cost
from t
where account = 10
union all
select account, cost3
from t
where account = 10
union all
select account, cost2
from t
where account = 20
union all
select account, cost4
from t
where account = 20
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...