понедельник, 15 марта 2010 г.

Транспонирование SQL запроса

В редакции СУБД Oracle начиная с 11g транспонировать данные можно при помощи следующего SQL запроса:

with pivot_data as (
select s.nomer, a.ap_kodcat, a.ap_price
from sclad s, alt_price a
where a.ap_kodkart=s.kod
and s.price='+'
)
select *
from pivot_data
pivot (
sum(ap_price)
for ap_kodcat
in (
0 as price0,
1 as price1,
2 as price2
)
)

Комментариев нет: