Помогите составить запрос

iNfantry

Новичок
Допустим есть 3 таблицы:

user (id SERIAL PRIMARY KEY, name VARCHAR(30))
post (id SERIAL PRIMARY KEY, text VARCHAR(255))
post_stat (
user_id INTEGER REFERENCES user, -- primary key
post_id INTEGER REFERENCES post, -- primary key
like_count INTEGER,
share_count INTEGER,
comment_count INTEGER,
parse_date TIMESTAMP WITHOUT TIME ZONE - primary key
)

В первой таблице хранятся пользователи, во второй их сообщения, в третьей статистика сообщений.
К примеру с какого-то сайта или соцсети раз в час происходит парсинг пользователей и их сообщений "со стены". Используется PostgreSQL, но в данной ситуации это не имеет принципиального значения.
Теперь задача - нужно составить запрос, который по заданным ид пользователя и дате вернет сумму всех лайков всех сообщений заданного пользователя на момент заданной даты. Конешно, по-хорошему было бы иметь еще и таблицу статистики пользователей и там хранить такую инфу по каждой дате парсинга, но вся сложность в том, что надо выкрутиться без такой таблицы. Тоесть получается надо взять для каждого сообщения последнее (parse_date максимально близкое либое равное заданной дате) значение количества лайков и сложить эти значения. Сломал весь мозг, не знаю как быть, потому прошу вашей помощи)
 
Сверху