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

Oracle SQL - Cách lấy số lượng dựa trên ngày thành nhiều cột trong ORACLE

Đây là một cách để thực hiện việc này bằng cách sử dụng toán tử PIVOT.

with 
     inputs (REGID, SESSION_START_DATETIME, USAGEID) as (  
       select 1 , to_date('7/11/2016', 'mm/dd/yyyy'), 1 from dual union all 
       select 1 , to_date('6/10/2016', 'mm/dd/yyyy'), 1 from dual union all       
       select 1 , to_date('6/09/2016', 'mm/dd/yyyy'), 1 from dual union all 
       select 1 , to_date('5/04/2016', 'mm/dd/yyyy'), 1 from dual union all 
       select 1 , to_date('5/04/2016', 'mm/dd/yyyy'), 1 from dual union all 
       select 1 , to_date('5/04/2016', 'mm/dd/yyyy'), 1 from dual
     )
select * from (
  select regid, session_start_datetime,
         case when trunc(sysdate) - session_start_datetime between  0 and 30
                   then  '0-30_days_usagecount'
              when trunc(sysdate) - session_start_datetime between 31 and 60
                   then '31-60_days_usagecount'
              when trunc(sysdate) - session_start_datetime between 61 and 90
                   then '61-90_days_usagecount'
              end
         as col
  from inputs
)
pivot (  count(session_start_datetime)
            for col in ( '0-30_days_usagecount', '31-60_days_usagecount',
                        '61-90_days_usagecount'
                       )
      )
;



     REGID '0-30_days_usagecount' '31-60_days_usagecount' '61-90_days_usagecount'
---------- ---------------------- ----------------------- -----------------------
         1                      1                       2                       3

1 row selected.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. RR so với YY trong Oracle

  2. Java:Đọc Blob từ Oracle

  3. Làm thế nào để kiểm tra quyền đọc / ghi hệ thống tập tin của thư mục Oracle?

  4. một truy vấn tổng hợp với một số lưới logic bằng Oracle SQL

  5. Cách chuyển các giá trị trong khối ẩn danh với tham số bảng plsql