2016-08-29 16 views
1

に複数の行に1行を分割:Postgresは、私はこのようなテーブルORDER_ITEM持っ条件

| sku | unit_price | 
    |-----|------------| 
    | A | 25.00 | 
    | B | 20.00 | 
    | B | 20.00 | 
    | C | 15.00 | 
    | C | 15.00 | 
    | C | 15.00 | 

| sku | quantity | subtotal | 
    |-----|----------|----------| 
    | A |  1 | 25.00 | 
    | B |  2 | 40.00 | 
    | C |  3 | 45.00 | 

をのような結果にORDER_ITEMから「単位ORDER_ITEM」行を選択する方法はあります

ここで、skuの結果行の数はorder_itemの数量で、unit_priceは(小計/数量)ですか?

答えて

2

あなたはそのためのgenerate_series()使用することができます。

select oi.sku, oi.subtotal/oi.quantity as unit_price 
from order_item oi 
    cross join lateral generate_series(1,oi.quantity) 
order by oi.sku; 
関連する問題