搜索了一段时间后,我找到了SQL查询,它给了我正在寻找的结果。
select * from (select * from services WHERE user_id=1 ORDER BY created_at DESC) AS x GROUP BY servicename
因此用户拥有许多具有不同服务名称和服务时间的服务。 即。服务可以在列表中多次使用不同的服务时间。 我想要的是为他的服务获得最新的服务时间,即serviceA,serviceB和serviceC,但只有最新的记录。
现在我需要将此查询转换为rails,最好将模型放入范围,以便我可以再次调用它。什么是最好的做法?即我找不到如何让内部选择在轨道中工作的解决方案。
我已经做了一些搜索,但找不到类似的问题。
感谢您的帮助
答案 0 :(得分:0)
从服务GROUP BY服务名称中选择* from(SELECT MAX(created_at)为maxdate,(其他颜色名称))r INNER JOIN服务t ON t.servicename = r.servicename和user_id = 1;
我认为这将检索最新的记录,即具有最新服务时间的服务。