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

Viết chế độ xem oracle DB dựa trên sự khác biệt về dấu thời gian cột khác nhau

Nếu bạn muốn sự khác biệt với created_time không có thành phần thời gian, thì bạn muốn logic như thế này:

select msg_guid,
       (max(case when payload_type = 1 then created_time end) -
        (case when max(case when payload_type = 2 then created_time end) <>
                   trunc(max(case when payload_type = 2 then created_time end))
              then max(case when payload_type = 2 then created_time end) 
              when max(case when payload_type = 3 then created_time end) <>
                   trunc(max(case when payload_type = 3 then created_time end))
              then max(case when payload_type = 3 then created_time end) 
        end)
        ) as diff              
from table t
group by msg_guid;

Điều này trả về kết quả dưới dạng các phần nhỏ của một ngày.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORA-22288:tệp hoặc thao tác LOB FILEOPEN không thành công. Tên tệp, tên thư mục không chính xác

  2. Tại sao Group By của Mysql và Group by Oracle lại khác nhau

  3. Sự cố khi thay thế một tham chiếu trong Visual Studio-ASP.NET

  4. Sử dụng ROWID để định vị Hàng / Bản ghi trong Oracle có an toàn không?

  5. UTL_FILE.WRITE_ERROR khi gọi utl_file.put trong một vòng lặp