2015-09-12 29 views
1

我已經停止表,我想知道名稱Aldgate的情況下,我知道前一個Acton Town的停止名稱和下一個的停止名稱Aldgate East ? id加1,名稱不唯一。我怎麼弄到的?找到名稱,如果我知道上一個和下一個

例如

12.Acton Town 
13.Aldgate 
14.Aldgate East 
15.Apple 
16.Acton Town 
17.orange 
18.banane 
19.Aldgate East 
20.Aldgate 
21.book 
22.Acton Town 
23.Aldgate 
24.Aldgate East 

碼錶停止

CREATE TABLE IF NOT EXISTS stops 
(stop_id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, 
name varchar(30) NOT NULL, 
lat double(10,6) , 
longi double(10,6)) 
+0

是IDS增量(無缺口) – Strawberry

+0

去創建一個[SQLFiddle(http://sqlfiddle.com/) –

回答

1

您可以使用子查詢首先選擇以前的ID。

SELECT name 
FROM stops 
WHERE id = 
    (
    SELECT id + 1 
    FROM stops 
    WHERE name = 'Acton Town' 
    ); 
+1

我想得太多了。而且,它只有兩行。偉大的邁克爾先生 –

+0

@michael:我試過了你的查詢,但我得到了'Subquery返回多於1行'我試圖添加DISTINCT,但是我也得到了同樣的錯誤。 – TheBook

+0

那麼Acton Road是不是獨一無二的?所有的名字都不是唯一的嗎? – baao

相關問題