mysql – 如何获取日期中的第一条记录和最后一条记录

我有一个以下格式构成的表:

**ID        StationID         Status        UpdateTime**
  1             1              xxxx      2014-09-25 00:01:05
  2             1              xxxy      2014-09-25 01:05:18
  3             1              xxxz      2014-09-25 09:23:05
  4             1              xxxx      2014-09-25 20:01:05
  5             1              xxxz      2014-09-25 23:21:34
  6             1              xxxz      2014-09-26 00:01:00
  7             1              xxxx      2014-09-26 01:45:24
  8             1              xxxy      2014-09-26 14:01:43
  9             1              xxxx      2014-09-26 22:01:27

对于每一天,我想选择第一条记录和最后一条记录.
结果如下:

**ID        StationID         Status        UpdateTime**
  1             1              xxxx      2014-09-25 00:01:05
  5             1              xxxy      2014-09-25 23:21:34
  6             1              xxxz      2014-09-26 00:01:00
  9             1              xxxx      2014-09-26 22:01:27

谢谢大家;

最佳答案
试试这个:

select *
  from YOUR_TABLE yt
  join (select min(UpdateTime) minUpdateTime, max(UpdateTime) maxUpdateTime
          from YOUR_TABLE
         group by DATE_FORMAT(UpdateTime, '%Y-%m-%d')
       ) aggyt on aggyt.minUpdateTime = yt.UpdateTime or aggyt.maxUpdateTime = yt.UpdateTime

转载注明原文:mysql – 如何获取日期中的第一条记录和最后一条记录 - 代码日志