2016-11-29 79 views
0
SELECT MIN(temperature) 
FROM temperature 
WHERE sensor_id = '28-0316387a1eff' 
AND DATE(`dtg`) = CURDATE() 

这样做的目的是为我显示当天的最低温度。 我怎样才能让它看到发生这种情况的时间?Mysql - 在查询结果中显示更多详细信息

dtg使用current_timestamp

谢谢。

+0

http://dev.mysql.com/doc/refman/5.7/en/example-maximum-column-group-row.html – CBroe

回答

0

你可以选择该行,在温度=分钟(温度)

select `dtg`, temperature 
from temperature 
where temperature = (
    SELECT MIN(temperature) 
    FROM temperature 
    WHERE sensor_id = '28-0316387a1eff' 
    AND DATE(`dtg`) = CURDATE() 
) 
0

它会更快不使用选择子。更好的尝试:

select t.dtg ,t.temperature 
from temperature t 
WHERE t.sensor_id = '28-0316387a1eff' 
AND DATE(t.dtg) = CURDATE() 
order by t.temperature 
limit 1 
+0

这很好地工作。它是如何工作的,什么是't'。零件和他们做什么?谢谢。 – Richard

+0

这只是参考温度表的简短方法。所以你不必写temperature.sensor_id,但是你写了t.sensor_id – enido