Как найти прерванную последовательность в некотором столбце БД mySQL? - PullRequest
0 голосов
/ 27 декабря 2018

У меня есть таблица с идентификатором (ключ).

Я сгенерировал много строк.Однако некоторые строки не были сохранены, потому что транзакции не были завершены.

I have total 44000 of rows: first id is 1 & last id is 44045. 

Как я могу найти идентификаторы 44 отсутствующих строк?

1 Ответ

0 голосов
/ 27 декабря 2018

Вы можете попробовать что-то вроде ниже, чтобы получить строки, где нет другой строки с идентификатором меньше 1, где существует идентификатор текущей строки и где идентификатор не является минимальным (у которого не может быть предшественника).

SELECT *
       FROM elbat t1
       WHERE NOT EXISTS (SELECT *
                                FROM elbat t2
                                WHERE t2.id = t1.id - 1)
             AND t1.id <> (SELECT min(t2.id)
                                  FROM elabt t2);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...