我知道在postgresql中有获取行的最后和第一个值的聚合函数
我的问题是,他们不能按我的需要工作.我可以使用一个postgresql向导的帮助.我正在使用postgresql 9.2 - 以防该版本提供解决方案easyyer.
询问
select v.id, v.active, v.reg_no, p.install_date, p.remove_date
from vehicle v
left join period p on (v.id = p.car_id)
where v.id = 1
order by v.id, p.install_date asc
Run Code Online (Sandbox Code Playgroud)
返回6行:
id, active, reg_no, install_date, remove_date
1, TRUE, something, 2008-08-02 11:13:39, 2009-02-09 10:32:32
....
1, TRUE, something, 2010-08-15 21:16:40, 2012-08-25 07:44:30
1, TRUE, something, 2012-09-10 17:05:12, NULL
Run Code Online (Sandbox Code Playgroud)
但是当我使用聚合查询时:
select max(id) as id, last(active) as active, first(install_date) as install_date, last(remove_date) as remove_date
from (
select v.id, v.active, …Run Code Online (Sandbox Code Playgroud)