Нужно получить уникальные профили, заказанные create_date. Существует следующий запрос:Postgresql отдельная проблема
SELECT DISTINCT profiles.id, COALESCE(occured_at, users_visitors.created_at, visitors.created_at) creation_date FROM "profiles"
JOIN "visitors" ON "visitors"."profile_id" = "profiles"."id"
LEFT JOIN events ON profiles.id = events.profile_id
LEFT JOIN event_kinds ON event_kinds.id = events.event_kind_id
LEFT JOIN users_visitors ON visitors.id = users_visitors.visitor_id
WHERE (event_kinds.name = 'enter') AND "users_visitors"."user_id" = 2
ORDER BY creation_date asc
DISTINCT ON (profiles.id)
не поможет, как только она должна быть использована для заказа. GROUP BY profiles.id, ...
не работает.
Не могли бы вы помочь мне, пожалуйста?
Но какое значение create_date вам нужно, если у profile.id несколько разных? Кроме того, переместите условия предложения WHERE в соответствующее предложение ON, если вы снова захотите LEFT JOIN. Как сейчас, эти два исполняются как обычные INNER JOIN. – jarlh