sql >> Databáze >  >> RDS >> Sqlserver

SQL dotaz pro nalezení chybějících pořadových čísel

Co třeba něco jako:

  select (select isnull(max(val)+1,1) from mydata where val < md.val) as [from],
     md.val - 1 as [to]
  from mydata md
  where md.val != 1 and not exists (
        select 1 from mydata md2 where md2.val = md.val - 1)

dává souhrnné výsledky:

from        to
----------- -----------
6           6
8           8
11          14


  1. MySQL:jak získat x počet výsledků na seskupení

  2. SQL dotaz pro vyhledávání schématu všech tabulek

  3. Databáze MySQL s jedinečnými poli ignorovala koncové mezery

  4. Pentaho Data Integration (nejnovější verze) – Nedetekuje ovladač MySQL