来自Recordset的MySQL列

时间:2014-05-21 18:28:42

标签: mysql

也许我正在看这一切都错了。我有这张桌子,价格。当我报告新价格时,它进入表格并具有类型,价格,工作日和日期。我可以得到结果,但我希望列出的站点数和不同的燃料类型及其价格在列中。

以下是一个示例表http://sqlfiddle.com/#!2/8c04c/1

这就是我想要的,每一站每个站的最新价格:

---------------------------------------------------------------------------------------------------------------------------------
stationid    |    regular    |     regDateAdded    |    midgrade    |     midDateAdded    |    premium    |    preDateAdded
---------------------------------------------------------------------------------------------------------------------------------
52775        |      3.61     | 0000-00-00 00:00:00 |     3.71       | 0000-00-00 00:00:00 |      3.81     |     0000-00-00 00:00:00

也许我也在考虑这个问题。

1 个答案:

答案 0 :(得分:1)

虽然这会导致联系(如果多个站共享相同的最大日期添加),这是使用max聚合将表连接到自身的常用方法:

select p.stationid, p.price, p.fueltypeid, p.dateadded
from prices p
  join (select stationid, max(dateadded) maxdateadded
        from prices
        group by stationid) p2 on 
    p.stationid = p2.stationid and p.dateadded = p2.maxdateadded