获取有序的记录子集

时间:2015-06-21 07:05:14

标签: sql sqlite android-sqlite

我有一张表基本上描述了一条公交路线。该表包括特定路线的所有站点。

This SQLFiddle显示了一个示例。数据显示一个方向的流量,但路径也可以是另一个方向。

我需要获取此路线的子集(或所有路线),具体取决于起始站和终点站。例如,我可能会有这些:

/bin/bash

然而,如果方向来自例如H - > B,子集需要是G - >下进行。

序列列就是为了这个目的。

使用SQL只有一种干净简单的方法吗?

1 个答案:

答案 0 :(得分:1)

假设我理解你的问题,这似乎很简单 要获取子集,只需使用between...and列上的sequence运算符:

SELECT stop_from, stop_to
FROM routes
WHERE sequence BETWEEN 2 AND 11
ORDER BY sequence

要获得相反方向的子集,只需按desc排序,然后选择stop_tostop_fromstop_fromstop_to

SELECT stop_to As stop_from, stop_from As stop_to
FROM routes
WHERE sequence BETWEEN 3 AND 7
ORDER BY sequence DESC

See fiddle here