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

Cách chọn các bản ghi được nhóm theo giờ trong ngày kể cả những giờ không có bản ghi

SELECT h.hrs, NVL(Quantity, 0) Quantity
FROM (SELECT TRIM(to_char(LEVEL - 1, '00')) hrs
       FROM dual
       CONNECT BY LEVEL < 25) h
LEFT JOIN (SELECT TO_CHAR(event_date, 'HH24') AS during_hour,
                  COUNT(*) Quantity
           FROM user_activity u
           WHERE event_date BETWEEN
                 to_date('15-JUN-2010 14:00:00', 'DD-MON-YYYY HH24:MI:SS') AND
                 to_date('16-JUN-2010 13:59:59', 'DD-MON-YYYY HH24:MI:SS')
           AND event = 'user.login'
           GROUP BY TO_CHAR(event_date, 'HH24')) t
ON (h.hrs = t.during_hour)
ORDER BY h.hrs;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Trình tạo ORACLE FORMS

  2. Câu lệnh SQL để nối và đưa ra kết quả trong nhiều cột

  3. oci_bind_by_name không hoạt động trong PHP

  4. CHO THUÊ LOB

  5. Cách thực thi chức năng trong Oracle với các tham số