Форум программистов, компьютерный форум, киберфорум
Наши страницы
MySQL
Войти
Регистрация
Восстановить пароль
 
ember74
4 / 4 / 1
Регистрация: 07.10.2015
Сообщений: 495
Завершенные тесты: 5
1

Количество звонивших в нерабочее время

06.05.2016, 12:56. Просмотров 206. Ответов 4

Прошу вашей помощи, мне необходимо чтобы запрос выводил вот такие данные:

SQL
1
2
3
4
5
6
30.04.2016  2
02.05.2016  5
03.05.2016 12
04.05.2016  7
05.05.2016  23
06.05.2016  4
Первый столбец - дата, второй - количество звонков в нерабочее время.

Мой запрос выглядит так:

SQL
1
2
3
4
5
SELECT t1.calldate, t2.calldate FROM(SELECT DATE(calldate) AS calldate
FROM cdr WHERE calldate > LAST_DAY(DATE_SUB(CURDATE(), INTERVAL 1 MONTH))
AND calldate < DATE_ADD(LAST_DAY(CURDATE()), INTERVAL 1 DAY) AND LENGTH(src)>4
AND recordingfile LIKE 'in%' GROUP BY 1) AS t1 LEFT JOIN(SELECT calldate FROM cdr WHERE  disposition='ANSWERED' AND calldate BETWEEN '2016-05-05 09:00:00'
 AND '2016-05-05 18:00:00'  GROUP BY uniqueid) AS t2
Он выводит такой результат:

SQL
1
2
3
4
5
6
30.04.2016  (NULL)
02.05.2016  (NULL)
03.05.2016  (NULL)
04.05.2016  (NULL)
05.05.2016  (NULL)
06.05.2016  (NULL)
Очень надеюсь на вашу помощь! Всем + в карму
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.05.2016, 12:56
Ответы с готовыми решениями:

mysql запрос на месяц, время и количество
Нужно определить, кто приходил с 8 до 9 больше 3-x раз за месяц....

Написать программу которая находит файлы, созданные в нерабочее время
Написать программу которая находит фаайлы, созданные в нерабочее время. Понятия...

Нерабочее консольное меню с++
Всем привет! написал достаточно простое консольное меню для курсовой. Идея -...

Как определить нерабочее оборудование
Проблема в следующем - OS (Windows 8.1 x64) после установки драверов на чипсет...

График количество-время, где время разбито в несколько полей
Собсна, есть таблица с полями: День; Час; Минута; Количество; Все...

4
STArSka
146 / 27 / 13
Регистрация: 21.09.2015
Сообщений: 59
06.05.2016, 16:22 2
Пожалуйста, предоставьте исходную таблицу, или формат, нужно больше информации про таблицу для которой пишется запрос, спасибо.
0
ember74
4 / 4 / 1
Регистрация: 07.10.2015
Сообщений: 495
Завершенные тесты: 5
10.05.2016, 08:24  [ТС] 3
STArSka, Исходная таблица очень велика. Необходимые поля с которыми нужно работать calldate, uniqueid и disposition. В calldate хранится дата звонка, в uniqueid уникальный номер, disposition значение ANSWERED. Звонок может приходить сразу на три телефона одновременно, значит время у него будет одинаковое, или почти (с разницей в одну секунду). Тут в помощь приходит поле uniqueid, таким образом мы создаем уникальность звонка. Ну а дальше, необходимо посчитать количество звонков, которые проходили в промежуток времени BETWEEN '2016-05-05 09:00:00'AND '2016-05-05 18:00:00' , дата естественно должна изменяться. Вот тут то я и застрял..
0
retvizan
297 / 285 / 107
Регистрация: 09.04.2011
Сообщений: 798
10.05.2016, 10:23 4
MySQL
1
select date(calldate), count(distinct uniqueid) from cdr where time(calldate) between '09:00:00' AND '18:00:00' group by 1;
1
ember74
4 / 4 / 1
Регистрация: 07.10.2015
Сообщений: 495
Завершенные тесты: 5
10.05.2016, 12:04  [ТС] 5
retvizan, у меня этот запрос выводит полное количество записей (т.е. он не обращает внимание на условие between)

Добавлено через 1 час 21 минуту
retvizan, Сейчас немного дополнил его, вроде все правильно работает. Спасибо!
0
10.05.2016, 12:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.05.2016, 12:04

Время. Дано количество секунд. Вычислить время в формате часы/минуты/секунды.
Написать программу, которая требует от пользователя ввести к- секунду и чтобы...

Нерабочее контекстное меню в "Пуске"
Добрый день. Моя проблема такова: Перестало &quot;нормально&quot; отображаться...

Количество шагов, время, обращения к F
Есть реализованых 3 метода Дихотомии, Золотого сечения, Фибоначи. Как найти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru