sql >> Database teknologi >  >> RDS >> Oracle

Gruppér efter værdier, der er i rækkefølge

Du kan bruge Aketi Jyuuzous teknik kaldet Tabibitosan her:

SQL> create table mytable (id,chequeno)
  2  as
  3  select 1, 15 from dual union all
  4  select 2, 19 from dual union all
  5  select 3, 20 from dual union all
  6  select 4, 35 from dual union all
  7  select 5, 16 from dual
  8  /

Table created.

SQL> with tabibitosan as
  2  ( select chequeno
  3         , chequeno - row_number() over (order by chequeno) grp
  4      from mytable
  5  )
  6  select row_number() over (order by grp) "row"
  7       , min(chequeno) "from"
  8       , max(chequeno) "to"
  9    from tabibitosan
 10   group by grp
 11  /

       row       from         to
---------- ---------- ----------
         1         15         16
         2         19         20
         3         35         35

3 rows selected.

Med venlig hilsen
Rob.



  1. SQLite AUTOINCREMENT

  2. MySQL Rollback Query

  3. Lær, hvordan du importerer Excel-data til en MySQL-database

  4. Oracle ODP.Net og EF CodeFirst - SaveChanges-fejl