2012-03-20 1 views
0

У меня есть день, месяц, год, столбцы значений в одной таблице, здесь мне нужно получить среднее значение за неделю в течение одного месяца. как получить это. пожалуйста, помогите мне в этом.Как получить неделю в среднем от месяца в mysql?

select avg(value) from table group by month 

дает средний месяц.

select avg(value) from table group by day 

дает средний день. но как получить неделю средний из месяц поле.

+0

Вы можете разместить некоторые выборочные данные ...? – Teja

ответ

2

Вы не можете «получить недели от месяца», как один не является подмножеством другого.
Число дней (и, следовательно, недель) в течение 1 месяца варьируется от месяца к месяцу и только в не-високосные годы - и только в феврале - есть ровно 4 недели в месяц.

Вы должны использовать исходное поле даты и использовать функцию даты для ограничения/группировки данных по неделям.
получить неделю в MySql с
WEEK(timestamp)
или
YEARWEEK(timestamp)
или
WEEKOFYEAR(NOW())
или
DATE_FORMAT($yourDate, \'%X %V\') as week

+0

@RameshK, Майкл прав. месяц может начаться с того, что говорят .. Вторник, ср. или чт. Таким образом, это оставляет половину/неделю в начале и, возможно, в конце тоже. Посмотрите на февраль 2012 года ... 5 недель, первый и последний частичный. Как это точно изобразить «средний» ... – DRapp

 Смежные вопросы

  • Нет связанных вопросов^_^