Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Grupuj według wartości, które są w kolejności

Możesz użyć techniki Aketi Jyuuzou zwanej Tabibitosan tutaj:

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.

Pozdrawiam,
Zbój.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zrozumienie segmentów Lob (SYS_LOB) w Oracle?

  2. Jak sprawdzić format daty sesji Oracle

  3. Procedura eksportowania tabeli do wielu plików csv

  4. Format ciągu URL do łączenia się z bazą danych Oracle za pomocą JDBC

  5. Łączenie C# z Oracle