Du kan få det minsta tillgängliga ID:t med den här frågan:
SELECT MIN(t1.ID + 1) AS nextID
FROM tablename t1
LEFT JOIN tablename t2
ON t1.ID + 1 = t2.ID
WHERE t2.ID IS NULL
Vad den gör är att den förenar tabellen med sig själv och kontrollerar om min+1
ID är null
eller inte. Om det är null är det ID:t tillgängligt. Anta att du har tabellen där ID
är:
1
2
5
6
Sedan kommer denna fråga att ge dig resultatet som 3
vilket är vad du vill.