Форум программистов, компьютерный форум, киберфорум
MySQL
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 10.04.2014
Сообщений: 45
1

Не могу переделать запрос

01.12.2017, 12:42. Показов 471. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте!

не могу переделать запрос
SQL
1
2
3
4
5
6
7
8
9
10
11
SELECT 
    dt.tdate, COUNT(deals.id) AS COUNT 
FROM `deals` 
RIGHT JOIN `date_template` `dt` 
    ON (FROM_UNIXTIME(deals.created_at, '%Y-%m-%d') = dt.tdate 
        AND 
        deals.status=100) 
WHERE (dt.tdate >= FROM_UNIXTIME(1477976440, '%Y-%m-%d')) 
    AND (dt.tdate <= FROM_UNIXTIME(1480568440, '%Y-%m-%d')) 
GROUP BY `dt`.`tdate` 
ORDER BY `dt`.`tdate`
Есть таблица: date-template с полями id, tdate (DATE) - это просто список дат на 30 лет
Есть таблица сделок: deals, с полями id, created_at (INT), status (INT)

По указанному запросу для графика подбираются все сделки со статусом 100, с количеством по датам.

Появилась задача сделать запрос, который бы выводил все сделки с количеством по датам, но группированные еще и по статусу.
Сам статус также нужно вынести в SELECT

Основная проблема в том, что сейчас выводятся весь промежуток дат, даже если есть count = 0
Если убрать условие status = 100, и добавить status в GROUP BY, то выборка идет, но пропадают нулевые значения count...

Куда копать, не подскажите?

Добавлено через 3 часа 21 минуту
Наверное можно сделать join таблицы доступных статусов... Тогда проблема решиться... Но нет такой таблицы и статусы прописаны жестко в системе...

Нельзя ли join сделать не для таблицы, а для массива, например?

Добавлено через 1 час 0 минут
Пока через временную таблицу сделал
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.12.2017, 12:42
Ответы с готовыми решениями:

Не знаю как переделать запрос
есть две таблицы в базе первая - radacct в ней данные о сеансах разных юзеров, подключенных к...

Переделать запрос с MS SQL на MySQL
Здравствуй всяк вошедший. Нужно переделать запрос MS SQL на MySQL. Подробные условия задачи:...

Как переделать код - сделать запрос с двух и более страниц?
Добрый день! Как переделать код (часть скрипта rss.php), чтобы был запрос с двух таблиц. В...

Как переделать запрос в цикле на один запрос с фильтром по массиву
Мне говорят: код неправильный, надо запрос ciblockelement::getlist c фильтром по разделу, который...

2
763 / 664 / 194
Регистрация: 24.11.2015
Сообщений: 2,158
01.12.2017, 16:04 2
Цитата Сообщение от Error202 Посмотреть сообщение
но пропадают нулевые значения count...
Если проблема только в этом, то есть такая конструкция GROUP BY .... HAVING count... <>0
0
0 / 0 / 0
Регистрация: 10.04.2014
Сообщений: 45
01.12.2017, 16:08  [ТС] 3
Забыл.... проверю

Спасибо!
0
01.12.2017, 16:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.12.2017, 16:08
Помогаю со студенческими работами здесь

Переделать SQL запрос в запрос RedBeanPHP
В общем пишу поиск по таблице, есть готовое решение, но в SQL, возникла идея переделать SQL ...

Переделать запрос
переделайте пожалуйста, эти 3 запроса в один SELECT DISTINCT Аукцион.Код_Аукциона,...

Переделать запрос в параметрический
Помогите пожалуйста!Завтра последний день сдачи курсача, а я все мучаюсь, плохо понимаю...

Переделать SQL запрос
Есть база данных, в которой есть SQL запрос на обновление таблицы. Нужно или из него сделать не SQL...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru