WEEK()
или WEEKOFYEAR()
год возвращения года. Но если я хочу GROUP BY
неделю, с диапазоном времени, охватывающим годы, то GROUP BY WEEK()
не будет работать. Поскольку WEEK вернет те же значения, скажем, 3 января 2010 года и 3 января 2011 года. Как решить эту проблему?Mysql Получите неделю жизни
0
A
ответ
1
Нашел решение самостоятельно. YEARWEEK();
функция. Группировка по году и неделе не решит проблему. Как и в этом случае, неделя, начинающаяся в декабре и заканчивающаяся в январе, будет разделена на два из-за группового года.
3
Group обеими недели и года:
GROUP BY YEAR(column), WEEK(column)
1
Вы должны выбрать YEAR
тоже в пункте GROUP BY
.
SELECT .... GROUP BY YEAR(date_field), WEEKOFYEAR(date_field), WEEK(date_field);
Вы можете опустить любой из WEEK...
условий.
он должен быть обратным образом – Cris
Спасибо Cris, изменил его – Veda
@Cris Порядок условий «GROUP BY» не имеет никакого отношения к работе, единственная разница - это эстетика – AeroX