помогите написать sql запрос
От: krandv Россия  
Дата: 17.02.14 19:43
Оценка:
У меня есть несколько таблиц, отчет по которым необходимо сделать одним sql запросом. На несколько разбить не получится, т.к. пишу для существующей системы и в функцию, генерирующую отчет, необходимо передать именно SQL запрос.

Таблицы:
orders(orderID)
ordered_carts(itemID, orderID, Quantity)
cart_items(itemID, productID)
products(productID, Price)


Т.е. есть список заказов (таблица orders), к каждому заказу через orderID привязан список продуктов (ordered_carts.itemID) и их количество в заказе (ordered_carts.Quantity). В заказе может быть несколько продуктов. ordered_carts.itemID не задает продукт напрямую, это порядковый номер покупки. Для связи с конкретным продуктом используется таблица cart_items, которая сопоставляет номер покупки (itemID) с ID продукта (productID). Для каждого продукта есть цена, заданная в таблице products. Все ID поля уникальны.

Отчет, т.е. SQL запрос, должен сформировать таблицу для заданного orderID. Например, если в заказе c orderID='order1' есть три позиции, то SQL запрос должен сформировать выборку их 3х строк:
order1, Price1*Quantity1
order1, Price2*Quantity2
order1, Price3*Quantity3

Не могу придумать как это сделать одним SQL запросом. Приму любые подсказки, ссылки на похожие примеры и т.п. Заранее спасибо за помощь.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.