我有一张桌子
Date value1 value2
2012-09-07 1 1
2012-09-06 2 2
2012-09-05 3 3
2012-09-04 4 4
2012-09-03 5 5
2012-08-31 6 6
2012-08-30 7 7
2012-08-29 8 8
2012-08-28 9 9
2012-08-27 10 10
2012-08-24 11 11
2012-08-23 12 12
2012-08-22 13 13
表中的值不像示例中那样升序。有随机数。
我需要得到一周的开始日期,一周value1
的开始和一周value2
的结束。
日期字段是唯一的,它只存储日期,因此不允许重复日期。
我尝试使用以下查询:
SELECT MIN(`Date`) as Date,
(SELECT `value1` ORDER BY `Date` ASC LIMIT 1) as Start,
(SELECT `value2` ORDER BY `Date` DESC LIMIT 1) as End
FROM table
GROUP BY YEAR(`Date`), WEEK(`Date`,7)
查询正确返回分组的周,value1
但value2
也从一周的行开始,即
2012-08-27 10 10
但是我需要:
2012-08-27 10 6
我做错了什么?