Chcete tedy všechny návštěvy uživatelů s časem poslední návštěvy.
Místo použití DISTINCT
můžete použít funkci GROUP
s MAX
funkce.
Dotaz vypadá takto
Events.group(:user_id).maximum(:time)
Tím získáte požadované výsledky
{21=>Tue, 18 Dec 2018 11:15:24 UTC +00:00, 23=>Thu, 20 Dec 2018 06:42:10 UTC +00:00}
Doufám, že to pro vás funguje.
FYIDISTINCT ON (sloupce). je syntaxe PostgreSQL.