获取具有不同值列的created_at日期的最后一个值

时间:2016-05-24 17:25:59

标签: laravel eloquent laravel-5.1 builder

我在很多天前遇到同样的问题,我在MongoDB中有一个与她的传感器相关的很多值的表。然后我必须得到所有这些区分传感器,但我必须采取最后一个值,例如:

value---sensor---created_at
---------------------------
25---1---2016-05-09 16:33:51

68---1---2016-06-09 16:33:51

13---1---2016-07-09 16:33:51

12---3---2016-05-09 16:33:51

22---3---2016-06-09 16:33:51

我需要取传感器1的最后一个值:

13---1---2016-07-09 16:33:51

传感器2的最后一个值:

22---3---2016-06-09 16:33:51

但我不能TT;

我尝试这样做:

Value::select('sensor', 'value', 'created_at')->orderBy('created_at', 'DESC')->groupBy('user_sensor_type_id')->get();

但它会返回随机值,而不是最后一个。

有什么想法吗?

非常感谢!

1 个答案:

答案 0 :(得分:0)

这对我有用:

Value::select('sensor', 'value', 'created_at')->groupBy('user_sensor_type_id')->get();

如果它有效,请尝试添加最新的()

Value::select('sensor', 'value', 'created_at')->groupBy('user_sensor_type_id')->latest()->get();