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

Nhóm MySQL theo số tuần với cột nhiều ngày

thử:

SELECT weekofyear(forcast_date) AS week_forcast,
   COUNT(forcast_date) AS count_forcast, t2.count_actual
FROM
   t t1 LEFT JOIN (
SELECT weekofyear(actual_date) AS week_actual,
   COUNT(forcast_date) AS count_actual
FROM t
GROUP BY weekOfYear(actual_date)
) AS t2 ON weekofyear(forcast_date)=week_actual
GROUP BY
weekofyear(forcast_date), t2.count_actual

sqlFiddle

Bạn phải viết khoảng 30 (cột ngày của bạn) kết hợp bên trái và yêu cầu là cột ngày đầu tiên của bạn không được có tuần trống (với số lượng là 0) nếu không các liên kết sẽ bị bỏ lỡ.



  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 nghiêm trọng:Không thể khai báo lại session_start () trong dòng 25 functions.php

  2. Khi nào thì một bảng chuyển từ MyISAM sang InnoDb?

  3. MySQL - chọn khoảng thời gian 2 giờ một lần từ cột dấu thời gian

  4. MySQL:Quyền truy cập bị từ chối đối với người dùng 'test' @ 'localhost' (sử dụng mật khẩu:CÓ) ngoại trừ người dùng root

  5. MySQL:Tại sao ID thứ 5 trong mệnh đề IN lại thay đổi mạnh mẽ kế hoạch truy vấn?