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

Získejte minimální nepoužitou hodnotu ve sloupci MySQL

SELECT min(unused) AS unused
FROM (
    SELECT MIN(t1.id)+1 as unused
    FROM yourTable AS t1
    WHERE NOT EXISTS (SELECT * FROM yourTable AS t2 WHERE t2.id = t1.id+1)
    UNION
    -- Special case for missing the first row
    SELECT 1
    FROM DUAL
    WHERE NOT EXISTS (SELECT * FROM yourTable WHERE id = 1)
) AS subquery


  1. Spojení tabulek InnoDB s tabulkami MyISAM

  2. Vnitřní smyčka while nefunguje

  3. Jak mohu zabránit Postgresu vložit poddotaz?

  4. Třídicí strom se zhmotněnou cestou?