在我的应用程序中,我有一个名为Pdata的模型,其中包含(以及其他)列pdc(整数)和时间戳。 pdc是每5分钟完成一次的测量值。
我的问题是: 获得每天最高pdc的最佳方法是什么?
结果应该是最大pdc值和时间戳(或Pdata.id)的列表。
非常感谢,Andreas
答案 0 :(得分:2)
您可以使用maximum
和group
的组合。您需要提取时间戳的日期部分并对其进行分组。提取日期的语法可能因数据库而异,但请尝试一下:
Pdata.group("DATE(timestamp)").maximum(:pdc)
答案 1 :(得分:0)
试试这个
Pdata.where(timestamp: (Time.now.midnight - 1.day)).order(timestamp: :desc)