需求:下面表中有很多数据,这些数据是设备定时一分钟获取到一次的数据,现在取name最新时间的value值
SELECT t.* FROM ( SELECT NAME name, VALUE value, TIME time FROM gy_device_source ORDER BY TIME DESC LIMIT 999999999 ) t GROUP BY t.name
-- 如果上面代码执行报错,需要修改mysql配置文件:
vim /etc/my.cnf
在末尾添加:
[mysqld]
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
然后保存重启mysql:
service mysqld restart
查询结果: