【发布时间】:2016-06-29 15:41:17
【问题描述】:
我有一个包含所有记录的表 1:
Id, Arrival,Departure, Datestamp (Datestamp is unique)
1 LG LE 2011-11-12 12:30:57
2 LE LG 2010-11-12 12:30:51
3 LE LG 2019-10-12 12:30:36
4 LG LE 2009-09-12 12:20:45
5 LP LA 2008-11-12 11:30:25
6 LP LA 2007-07-12 12:40:56
7 LA LP 2005-03-12 12:55:51
8 LG LP 2001-11-12 12:22:25
我想选择所有记录,其中 Départure from row = Arrival from previous row order by datestamp DESC
例子:
1 LG LE 2011-11-12 12:30:57
3 LE LG 2019-10-12 12:30:36
4 LG LE 2009-09-12 12:20:45
6 LP LA 2007-07-12 12:40:56
7 LA LP 2005-03-12 12:55:51
【问题讨论】:
-
没有 id 列或类似的?
-
SQL 表代表 无序 集。除非列指定顺序,否则没有上一行或下一行。
-
根据您使用的数据库,您可以使用window functions 来完成您想要的操作。看看
row_number、lag和lead。 -
版本 PHP 5.2.17, Mysql : 5.5
标签: sql row calculated-columns next