数十万のレコードを持つ巨大なテーブルがあります。それらはすべて、最初の列に一意の ID を持っていますが、番号のシーケンスに欠けているものもあります。
個々に欠落している番号のリストを表示しようとしています。
たとえば、次のようになります。
10029
10032
10034
10036
私はそれを表示しようとしています:
10030
10031
10033
10035
このクエリを見つけましたが、範囲がある場合に数字が欠落しているようです:
SELECT t1.id+1 AS Missing
FROM data AS t1
LEFT JOIN data AS t2
ON t1.id+1 = t2.id
WHERE t2.id IS NULL
結果:
10030
10033
ご覧のとおり、10031 と 10035 がそのリストにありません。