0

Есть запрос

SELECT calldate,count(*) FROM cdr WHERE dstchannel LIKE '%6392%' AND type = 'main' AND direction= 'incoming' AND calldate between '2015-06-01' and '2015-08-31' group by calldate;

Результат:

 calldate | count 
------------------------+-------
 2015年06月02日 09:31:07+03 | 1
 2015年06月02日 09:48:12+03 | 1
 2015年06月02日 10:12:15+03 | 1
 2015年06月02日 10:21:12+03 | 1
 2015年06月02日 10:37:20+03 | 1
 2015年06月02日 11:51:08+03 | 1
 2015年06月02日 12:12:06+03 | 1
 2015年06月02日 12:16:36+03 | 1
 2015年06月02日 12:50:24+03 | 1
 2015年06月02日 13:10:07+03 | 1
 2015年06月02日 13:17:20+03 | 1
 2015年06月02日 14:21:12+03 | 1
 2015年06月02日 15:13:12+03 | 1
 2015年06月02日 15:18:03+03 | 1
 2015年06月02日 15:21:45+03 | 1
 2015年06月02日 15:52:36+03 | 1
 2015年06月03日 15:06:36+03 | 1

Желаемый результат:

 calldate | count 
------------------------+-------
 2015年06月02日 | 16
 2015年06月03日 | 1

поле calldate имеет вид 2015年06月03日 15:06:36+03

Подскажите как отредактировать запрос что бы получить желаемый результат ?

задан 7 окт. 2015 в 14:59

1 ответ 1

3

Вам нужна группировка по полю calldate, но только по дате, без временной части... MySQL функция DATE() берет только дату из поля типа datetime - вот по ней и группируйте.

Вот такой вариант:

SELECT DATE(calldate) as calldate, count(*) 
FROM cdr 
WHERE dstchannel LIKE '%6392%' AND type = 'main' AND direction= 'incoming' 
 AND calldate between '2015-06-01' and '2015-08-31' 
GROUP BY DATE(calldate);
ответ дан 7 окт. 2015 в 15:05

Ваш ответ

Черновик сохранён
Черновик удалён

Зарегистрируйтесь или войдите

Регистрация через Google
Регистрация через почту

Отправить без регистрации

Необходима, но никому не показывается

Отправить без регистрации

Необходима, но никому не показывается

Нажимая «Отправить ответ», вы соглашаетесь с условиями пользования и подтверждаете, что прочитали политику конфиденциальности.

Начните задавать вопросы и получать на них ответы

Найдите ответ на свой вопрос, задав его.

Задать вопрос

Изучите связанные вопросы

Посмотрите похожие вопросы с этими метками.