如果记录的主键是1,3,4,5,6,8
我想选择具有pk的记录:1,6
注意
我不知道哪些id是非连续的
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
SELECT
*
FROM
[MyTable]
WHERE
[MyId] NOT IN
(
SELECT
[MyId] - 1
FROM
[MyTable]
)
where
子句?select *
from your_table
where id in (1, 6)
请记住,在您选择的数据库中,行通常不是“连续的”,除非您明确地对它们进行排序。如果您没有指定排序方式,它们通常会以正确的顺序出现。
SELECT
[MyId] + 1
FROM
[MyTable]
WHERE
[MyId] NOT IN
(
SELECT
[MyId] - 1
FROM
[MyTable]
)
ORDER BY [MyId] + 1