sql >> Database >  >> RDS >> Mysql

Vind minimale niet-gebruikte waarde uit verzameling rijen gemarkeerd met een id en customId

Je kunt het volgende doen:

select 1 + min(col)
from t
where not exists (select 1 from t t2 where t2.col = t.col + 1);

Als u "1" moet opnemen, dan:

select (case when min(tt.mincol) <> 1 then 1
             else 1 + min(col)
        end)
from t cross join
     (select min(col) as mincol from t) tt
where not exists (select 1 from t t2 where t2.col = t.col + 1)


  1. Databaseontwerp voor meertalige toepassingen

  2. Hoe een lijst met tabellen te krijgen zonder primaire sleutelbeperking in alle databases van SQL Server-instantie - SQL Server / TSQL-zelfstudie, deel 62

  3. Hoe gebruik je XPath met een variabele in Oracle XMLTable?

  4. Voer SQL uit geschreven in een tekstvak met VBA