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

Làm cách nào để lấy sự kiện tiếp theo khi giá trị thay đổi?

Có vẻ như bạn muốn giao dịch đầu tiên và cuối cùng dựa trên thời gian. Tôi nghĩ những điều sau đây sẽ làm những gì bạn muốn:

select item,
       min(transaction) keep (dense_rank first order by timestamp) as StartTx, 
       min(transaction) keep (dense_rank last order by timestamp) as EndTx,
       max(timestamp) - min(timestamp)
from transactions t
group by item;


  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 nội bộ (00801) khi kết hợp hai bộ sưu tập trong oracle 10g

  2. Chức năng xếp hạng trong MySQL với mệnh đề Order By

  3. Đặt NLSLANG mà không có hàng nghìn bộ tách

  4. Bí ẩn của rownum trong tiên tri

  5. Bảng tra cứu DATE (1990/01/01:2041/12/31)