我下面的表格有mysql的获取日期之间唯一的记录与特定的顺序
id | item_id | start_date | end_date | disc_percent
1 | 1 | 2016-12-27 | 2016-12-31 | 50
2 | 2 | 2016-12-27 | 2016-12-31 | 50
3 | 3 | 2016-12-27 | 2016-12-31 | 50
4 | 137 | 2016-12-27 | 2016-12-31 | 50
5 | 1 | 2016-12-28 | 2016-12-29 | 10
和我运行此查询:
SELECT *
from onsale
WHERE (CURDATE() BETWEEN onsale.start_date
AND onsale.end_date)
order by onsale.start_date DESC,
onsale.end_date ASC
我想唯一的每个ITEM_ID的第一个记录像这样:
id | item_id | start_date | end_date | disc_percent
5 | 1 | 2016-12-28 | 2016-12-29 | 10
2 | 2 | 2016-12-27 | 2016-12-31 | 50
3 | 3 | 2016-12-27 | 2016-12-31 | 50
4 | 137 | 2016-12-27 | 2016-12-31 | 50
我怎样才能得到这个结果? 感谢您的帮助
可能的复制[ROW \ _NUMBER()in MySQL](http://stackoverflow.com/questions/1895110/row-number-in-mysql) –
[Get top n re每组分组结果](http://stackoverflow.com/questions/12113699/get-top-n-records-for-each-group-of-grouped-results) – shmosel
只读通过推荐的答案,我不要解开它们 –