If the primary keys of the records are 1,3,4,5,6,8
I want to select the records with pk:1,6
NOTE
I don't know which ids are non-consecutive
If the primary keys of the records are 1,3,4,5,6,8
I want to select the records with pk:1,6
NOTE
I don't know which ids are non-consecutive
Why not use a where
clause in your SQL query ?
select *
from your_table
where id in (1, 6)
Remember, in your DB of choice, rows generally aren't "consecutive" unless you specifically ORDER them. They just often happen to come out in the right order when you don't specify an order by.
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
What about something like this?
SELECT
*
FROM
[MyTable]
WHERE
[MyId] NOT IN
(
SELECT
[MyId] - 1
FROM
[MyTable]
)