Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

nhận các khoảng giá trị không thay đổi từ một dãy số

Bạn muốn xác định các nhóm giá trị liền kề. Một phương pháp là sử dụng lag() để tìm phần đầu của dãy, sau đó là tổng tích lũy để xác định các nhóm.

Một phương pháp khác là sự khác biệt của số hàng:

select value, min(id) as from_id, max(id) as to_id
from (select t.*,
             (row_number() over (order by id) -
              row_number() over (partition by val order by id
             ) as grp
      from table t
     ) t
group by grp, value;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Lỗi khi lưu và nhận blob từ cơ sở dữ liệu SQL oracle

  2. Truy vấn phân cấp trong Oracle SQL:Làm phẳng hệ thống phân cấp và thực hiện tổng hợp

  3. Oracle SQL CASE WHEN ORA-00932:kiểu dữ liệu không nhất quán:CHAR dự kiến ​​nhận được NUMBER 00932. 00000 - kiểu dữ liệu không nhất quán:dự kiến% s có% s

  4. Cách chọn các giá trị trong một cột

  5. Hàm TAN () trong Oracle