我有一张像下面这样的table
products
id price date
-------------------------------
1 1 2018-04-27 12:10:15
2 2 2018-04-27 12:10:15
3 5 2018-04-27 12:10:18
4 3 2018-04-27 12:10:18
5 4 2018-04-27 12:11:25
6 3 2018-04-27 12:11:25
注:我必须找到每分钟的最低价格,最高价格,起始价格,结束价格。
我的预期产出是
firstPrice lastPrice minPrice maxPrice
---------------------------------------
1 3 1 5 --> Grouped for (2018-04-27 12:10)
4 3 3 4 --> Grouped for (2018-04-27 12:11)
我的问题是
SELECT b.lastPrice,c.firstPrice,min(a.price) as minPrice,max(a.price) as maxPrice from products as a left join (select price as lastPrice,date from products order by date desc) as b on a.date = b.date left join (select price as firstPrice,date from products order by date asc) as c on a.date = c.date where a.date >= '2018-04-27 12:10:00'
我不知道该怎么做才能得到预期的结果。
2条答案
按热度按时间y0u0uwnf1#
您可以使用以下选项:
demo:http://sqlfiddle.com/#!9/8a989/15/0号
y1aodyip2#
可能在子查询中使用limit子句获取第一个和最后一个价格,并按日期分组。