У меня есть эта форма таблицы MySQL: Группа по DATETIME (час - день - месяц - год)
я хочу графа вставки, которые имеют тип = «non_repondu» и сгруппировать результаты по 3 критериям.
1-client_id
2-queue_id
и
3 Дата и время: час, день, за месяц и год
До сих пор я сделали это:
SELECT `client_id`,`queue_id`,`datetime`,COUNT(`type`)
AS nombre_appels_repondus
FROM `appels`
where `type`= "non_repondu"
group by `appels`.`client_id`,`appels`.`queue_id`,`appels`.`datetime
, но как это я только фильтруюсь полной колонка даты и времени, что приводит меня таблицу каждой уникальной дату и время линии отдельно, как я могу получить результат на час , день, месяц и год ???
# 1055 - Выражение №4 списка SELECT не находится в предложении GROUP BY и содержит неагрегированный столбец 'asterisk_bi.appels.datetime', который не зависит от функциональности столбцы в разделе GROUP BY; это несовместимо с sql_mode = only_full_group_by – firasKoubaa
Следуйте за этим http://stackoverflow.com/questions/37951742/1055-expression-of-select-list-is-not-in-group-by-clause-and-contains-nonaggr , надеюсь, что это должно решить вашу проблему. – Faisal
Я работаю на удаленном сервере, который я не могу изменить, но я решаю его, делая это: ANY_VALUE ('datetime'), DATE_FORMAT (ANY_VALUE (' appels'.'datetime'), '% d ') AS DAY, (вы можете уточнить свой ответ посетителям) – firasKoubaa