Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL Raggruppa per numero di settimana con più colonne di date

prova:

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

Devi scrivere circa 30 (le colonne della tua data) a sinistra del join e il requisito è che la tua prima colonna della data dovrebbe avere una settimana vuota (con un conteggio di 0) o i join mancheranno.