sql >> Databáze >  >> RDS >> Mysql

mysql najít nejmenší + jedinečné ID k dispozici

Minimální dostupné ID můžete získat pomocí tohoto dotazu:

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

Dělá to tak, že spojí tabulku se sebou samým a zkontroluje, zda je min+1 ID je null nebo ne. Pokud je null, pak je toto ID k dispozici. Předpokládejme, že máte tabulku s ID jsou:
1
2
5
6

Pak vám tento dotaz dá výsledek jako 3 což je to, co chcete.



  1. MySQL:Jak vybrat záznamy pro tento týden?

  2. Naplňování událostí v plném javascriptu kalendáře z databáze

  3. Proč je vkládání-výběr do tabulky proměnných z proměnné XML tak pomalé?

  4. Odlišný dotaz Django MySQL pro získání více hodnot