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

bao gồm các hàng bị thiếu (không đếm được) khi sử dụng GROUP BY

Bạn có thể tạo một bảng có tất cả các giờ và tham gia các bảng:

CREATE TABLE IF NOT EXISTS `hours` (
  `hour` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `hours` (`hour`) VALUES (0), (1), (2), (3), (4), (5), (6), (7), (8), (9), (10), (11), (12), (13), (14), (15), (16), (17), (18), (19), (20), (21), (22), (23);

SELECT hours.hour, count( SMS_MESSAGES.ID ) 
FROM hours
LEFT JOIN SMS_MESSAGES ON ( hours.hour = HOUR( SMS_MESSAGES.smsDate ) ) 
GROUP BY 1 


  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àm thế nào để sử dụng regex trong MySQL?

  2. MySQL, cách chèn ngày trống

  3. Làm thế nào để kiểm tra kết nối HikariCP pooling đang hoạt động hay không trong Java?

  4. Điều khoản LIMIT thay thế trong JPQL là gì?

  5. Những sai lầm hàng đầu cần tránh trong MySQL Replication