Benötige SQL-Abfrage für den Zugriff auf verschiedene Seriennummern in einer Tabelle

Ich habe eine Tabelle mit "ID" -Spalte. Verschiedene numerische ionic sind in dieser Spalte von 1000 bis 9999 vorhanden. (1000, 1001 ….., 5000.5001 …., 8000,8001 …., 9000 …. 9999). Jetzt brauche ich eine " generische " Abfrage, die mir eine ausgeprägte Start-ID-Seriennummer in dieser Spalte geben wird. z. B. gewünschte Ausgabe

1000, 5000, 8000, 9000 

Wenn in Zukunft 7000-Serie in der ID-Spalte hinzugefügt wird, dann Ausgabe der gleichen Abfrage sollte 7000 auch in der list wie

 1000,5000,7000,8000,9000 

Versuche dies

 SELECT min(id) from tablename group by SUBSTRING(id, 1, 1) 

Eine andere Möglichkeit, es zu tun, wenn Ihre Serie mit jedem Tausend beginnt

 SELECT id FROM table1 WHERE id % 1000 = 0 

Hier ist SQLFiddle Demo


Nun ist hier ein generischer path, der jede "Insel" in id-Werten behandelt (eine Folge von Werten, bei denen next = prev + 1) als Serie. So kann eine Serie mit jedem Wert starten und stoppen

 SELECT t1.id FROM table1 t1 LEFT JOIN table1 t2 ON t1.id = t2.id + 1 WHERE t2.id IS NULL 

Hier ist SQLFiddle Demo

Versuche das und es für 2 Nullen.

 select * from table where id like '%000' or id like '%00';