1
它需要接收由creation_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, ...
也不起作用。
请问您能帮我吗?
但是,如果profiles.id有几个不同的值,你需要哪个creation_date值?此外,如果您重新设置想要的LEFT JOIN,则将WHERE子句条件移至相应的ON子句。现在这两个执行像普通的INNER JOIN一样。 – jarlh 2015-03-03 11:01:47