Помогите составить mysql запрос
Помогите пожалуйста с mysql-запросом.
Есть такие таблицы: заказы orders id manager_id client_id
товары заказа order_products id order_id qty price
подробная информация по товару заказа order_product_info order_product_id status_id date где date - дата изменения статуса конкретного товара в заказе в одном заказе разница в дате изменения статуса товарных позиции может составлять несколько дней
оплата клиента client_payment id summ date order_id client_id
Нужно получить сумму потраченную клиентом за полгода, сумму оплаченную клиентом за полгода, сумму потраченную клиентом в выбранный период (dat1 - dat2) учитывая фильтр по manager_id, status_id (выбираться должны заказы в товарах которых самая поздняя дата изменения статуса попадает в выбранный период дат) сумму оплаченную клиентом в выбранный период (dat1 - dat2) учитывая фильтр по manager_id, status_id (выбираться должны заказы в товарах которых самая поздняя дата изменения статуса попадает в выбранный период дат)
Остановился на этом:
SELECT * FROM
(SELECT SUM(op1.qty * op1.price) AS summ, op1.order_id, o1.client_id, o1.manager_id
FROM order_products op1
LEFT JOIN orders o1 ON o1.id=op1.order_id
JOIN (
SELECT op.id, da.order_product_id, op.order_id
FROM order_products op
JOIN (SELECT opi.order_product_id
FROM order_product_info opi
WHERE opi.date between '2022-05-01 00:00:00' AND '2022-05-05 23:59:59'
AND opi.status_id=2
GROUP BY opi.order_product_id
ORDER BY opi.date DESC) da ON da.order_product_id=op.id
LEFT JOIN orders o ON o.id=op.order_id
WHERE o.client_id
GROUP BY op.order_id) temp ON temp.order_id=op1.order_id
GROUP BY o1.client_id) buy
Дальше либо получаю одну строку, либо получаю несколько строк (мало), либо вообще ничего не получаю.