Если вы используете SQL Server 2005, вы можете использовать новый оператор PIVOT.
Простой PIVOT - количество заказов, которые заказчик размещает на отдельные товары.
Структура простой таблицы заказов:
CREATE TABLE Sales.[Order]
(Customer varchar(8), Product varchar(5), Quantity int)
Таблица содержит следующие значения:
Customer Product Quantity
Mike Bike 3
Mike Chain 2
Mike Bike 5
Lisa Bike 3
Lisa Chain 3
Lisa Chain 4
Пример: операция PIVOT в таблице заказов:
SELECT *
FROM Sales.[Order]
PIVOT (SUM(Quantity) FOR Product IN ([Bike],[Chain])) AS PVT
Ожидаемый результат этого запроса:
Customer Bike Chain
Lisa 3 7
Mike 8 2
Если вы не используете SQL Server, вы можете выполнить поиск «pivot» для вашей базы данных.