kvf77
Red Devil
Реален ли запрос?
Одна фирма попросила сделать ей форму-отчет к магазину, а начальник там помешан на одинарных запросах. Задача стоит сложная и я никак не могу понять реально ли выполнить ее одним запросом (во всяком случае у меня не получается). Притом, что таблицы немного неправильно на мой взгляд составлены. В частности:
total_amount = cart_amount - discount_amount + delivery_amount + tax_amount, но cart_amount нет в таблице order, а в таблице order_item есть поле price (Тогда cart_amount = price * quantity).
Есть 2 таблицы:
1)
order (заказы)
id
total_amount // Конечная стоимость
discount_amount // Скидка
delivery_amount // Доставка
tax_amount
order_status // Статус заказа
order_date DATETIME // дата заказа
2)
order_item (товары)
id
order_id // Номер заказа
price // стоимость товара
quantity // колличество товара в заказе
Что требуется? Сделать отчет по неделе или месяцу или году или общий, с указанной даты по указанную. Причем, если по неделе, то указанный перод должен выведен в таблицу с разбиением на недели. В общем какой-то заумный отчет одним запросом.
В таблице должно присутствоать: кол-во новых заказов за период, кол-во обработанных (order_status=1), общее кол-во заказов, кол-во купленных товаров, общая выручка, сумма скидок, чистая выручка (без учета доставок). Вот такая фигня. В MySql нету вложенных запросов и в один запрос все это затолкать не получается :-( Помогите.
Одна фирма попросила сделать ей форму-отчет к магазину, а начальник там помешан на одинарных запросах. Задача стоит сложная и я никак не могу понять реально ли выполнить ее одним запросом (во всяком случае у меня не получается). Притом, что таблицы немного неправильно на мой взгляд составлены. В частности:
total_amount = cart_amount - discount_amount + delivery_amount + tax_amount, но cart_amount нет в таблице order, а в таблице order_item есть поле price (Тогда cart_amount = price * quantity).
Есть 2 таблицы:
1)
order (заказы)
id
total_amount // Конечная стоимость
discount_amount // Скидка
delivery_amount // Доставка
tax_amount
order_status // Статус заказа
order_date DATETIME // дата заказа
2)
order_item (товары)
id
order_id // Номер заказа
price // стоимость товара
quantity // колличество товара в заказе
Что требуется? Сделать отчет по неделе или месяцу или году или общий, с указанной даты по указанную. Причем, если по неделе, то указанный перод должен выведен в таблицу с разбиением на недели. В общем какой-то заумный отчет одним запросом.
В таблице должно присутствоать: кол-во новых заказов за период, кол-во обработанных (order_status=1), общее кол-во заказов, кол-во купленных товаров, общая выручка, сумма скидок, чистая выручка (без учета доставок). Вот такая фигня. В MySql нету вложенных запросов и в один запрос все это затолкать не получается :-( Помогите.