У меня есть 3 таблицы: users, orders и order_prices, последняя из которых содержит анализ каждого заказа, и мне нужно найти клиентов, которые сделали повторный заказ за определенный месяц (обе таблицы имеют user_id, order_id, order_date, good_id (только order_prices) и т. д.) Мой сценарий выглядит следующим образом:
select o.system_id, o.user_id, o.date, o.id
from orders o
where o.date >= '2018-11-01' and o.date <= '2018-11-30' -- in the date range
AND o.user_id in
( -- has made the same order (content)
select op.user_id
from order_prices op join users u on u.id = op.user_id
where op.good_id in
(
select good_id
from order_prices
where user_id = o.user_id
)
And u.number_of_orders > 0 -- has ordered before
)
group by o.user_id
Ну, я не уверен, работает ли это даже логически, также, я думаю, мне нужно найти тех пользователей, чтобы их предыдущий порядок был одинаковым по содержанию сих последний заказ вышеупомянутый скрипт не принимает во внимание .... любые предложения БОЛЬШЕ, чем добро пожаловать!