У меня есть таблица заказов и таблица OrderRow в MS- SQL DB.
OrderNO *(Order)*
--------
100
101
102
Product Qty **(OrderRow)**
---- ---
Item1 25
Item2 50
Item3 3
Item4 10
----- n items
Я хочу написать запрос на выборку, который будет возвращать такой результат.
OrderNo Item1 Item2 Item3 Item4
----------------------------------------------
100 25 50 3 10
В настоящее время мой запрос ниже.
Select Order.OrderNo,[Item1].Qty , [Item2].Qty from Order
Outer Apply
(Select Qty from OrderRow where Order.OrderNo=OrderRow.OrderNo
and Product=Item1
) as [Item1]
Outer Apply
(Select Qty from OrderRow where Order.OrderNo=OrderRow.OrderNo
and Product=Item2
) as [Item2]
Но проблема в том, что числовые элементы в OrderRow не являются фиксированным числом.
Как я могу написать запрос, который будет работать для любое количество предметов? ..