2010-03-17 90 views

回答

5
SELECT * 
FROM your_table AS a 
    LEFT JOIN your_table AS b 
     ON a.key_column = b.key_column - 1 
WHERE b.key_column IS NULL 
2

爲什麼不在你的SQL查詢中使用where子句?

select * 
from your_table 
where id in (1, 6) 
+0

不,我沒有'1,6' – mysql 2010-03-17 11:50:27

1

記住,在你選擇的數據庫,行一般都不是「連續」,除非您特別訂購。當你沒有指定訂單時,他們往往會按照正確的順序出來。

2

這樣的事情呢?

SELECT 
    * 
FROM 
    [MyTable] 
WHERE 
    [MyId] NOT IN 
(
    SELECT 
     [MyId] - 1 
    FROM 
     [MyTable] 
) 
0

由羅賓日提出的解決方案稍加改進

SELECT 
    [MyId] + 1 
FROM 
    [MyTable] 
WHERE 
    [MyId] NOT IN 
(
    SELECT 
     [MyId] - 1 
    FROM 
     [MyTable] 
) 
ORDER BY [MyId] + 1