powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Объединение результатов запросов с общим полем date
6 сообщений из 6, страница 1 из 1
Объединение результатов запросов с общим полем date
    #38701218
undron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Приветствую!
есть таблица вида:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
+------+---------------------+---------------+
| id   | date                | wherenoanswer |
+------+---------------------+---------------+
|  318 | 2014-07-11 09:02:15 | 205           |
|  319 | 2014-07-11 09:03:47 | 205           |
|  320 | 2014-07-11 10:12:06 | 205           |
|  321 | 2014-07-11 10:35:07 | 205           |
|  322 | 2014-07-11 10:53:43 | 205           |
|  323 | 2014-07-11 11:01:25 | 505           |
|  324 | 2014-07-11 11:03:39 | 205           |
|  325 | 2014-07-12 11:04:50 | 305           |
|  326 | 2014-07-12 11:14:33 | 305           |
|  327 | 2014-07-13 11:15:11 | 305           |
|  328 | 2014-07-14 11:16:54 | 205           |
|  329 | 2014-07-14 11:21:40 | 205           |
|  330 | 2014-07-14 11:23:01 | 205           |
|  331 | 2014-07-14 11:23:04 | 205           |
|  332 | 2014-07-14 11:32:15 | 205           |
|  333 | 2014-07-14 11:50:06 | 205           |


wherenoanswer может быть: 205,305 или 505
запросом вида:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
SELECT COUNT(`id`) AS c205, DATE_FORMAT(`date`, '%Y.%m.%d %H') AS d205 
FROM abc2user 
WHERE wherenoanswer='205' 
GROUP BY d205 
ORDER BY d205 ASC

+------+---------------+
| c205 | d205          |
+------+---------------+
|    2 | 2014.07.11 09 |
|    3 | 2014.07.11 10 |
|   14 | 2014.07.11 11 |
|    4 | 2014.07.11 12 |
|    6 | 2014.07.11 13 |
|    5 | 2014.07.11 14 |
|   11 | 2014.07.11 15 |
|    3 | 2014.07.11 16 |
|    2 | 2014.07.11 17 |
|    6 | 2014.07.11 18 |
|   11 | 2014.07.11 19 |
|    5 | 2014.07.11 20 |
|    4 | 2014.07.12 09 |
|    4 | 2014.07.12 10 |
|    7 | 2014.07.12 11 |
|   19 | 2014.07.12 12 |
|    9 | 2014.07.12 13 |
|    6 | 2014.07.12 14 |
|    7 | 2014.07.12 16 |
|    9 | 2014.07.12 18 |


Я получаю необходимые мне данные и в нужном виде. Однако мне нужно еще добавить в итоговую таблицу результаты запросов с WHERE wherenoanswer='305' и WHERE wherenoanswer='505' и одинаковым полем date. Чтобы итоговая таблица выглядела вот так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
+------+------+------+---------------+
| c205 | c305 | c505 | date          |
+------+------+------+---------------+
|    2 |      |	   1 | 2014.07.11 10 |
|    3 |    5 |    3 | 2014.07.11 10 |
|   14 |      |    1 | 2014.07.11 11 |
|    4 |    2 |      | 2014.07.11 12 |
|    6 |    1 |    4 | 2014.07.11 13 |
|    5 |    5 |    1 | 2014.07.11 14 |
|   11 |      |      | 2014.07.11 15 |



Много времени потратил, так и не смог сделать. Помогите пожалуйста составить правильный запрос. Всем заранее спасибо за ответы!
...
Рейтинг: 0 / 0
Объединение результатов запросов с общим полем date
    #38701221
Диклевич Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
undron,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT 
    SUM(CASE WHEN wherenoanswer='205' THEN 1 ELSE 0 END) AS c205,
    SUM(CASE WHEN wherenoanswer='305' THEN 1 ELSE 0 END) AS c305,
    SUM(CASE WHEN wherenoanswer='505' THEN 1 ELSE 0 END) AS c505, 
    DATE_FORMAT(`date`, '%Y.%m.%d %H') AS day_date
FROM abc2user 
GROUP BY day_date
ORDER BY day_date ASC
...
Рейтинг: 0 / 0
Объединение результатов запросов с общим полем date
    #38701223
undron
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Wow! Не знал о таком. Спасибо большое!
...
Рейтинг: 0 / 0
Объединение результатов запросов с общим полем date
    #38702048
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А CASE тут нафига? лишние вычисления... просто
Код: sql
1.
SUM(wherenoanswer='205') AS c205
...
Рейтинг: 0 / 0
Объединение результатов запросов с общим полем date
    #38702163
Диклевич Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

так это в MySQL покатит, а в других СУБД?
...
Рейтинг: 0 / 0
Объединение результатов запросов с общим полем date
    #38702173
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Диклевич Александр, а форум не по другим субд, а по мусклю. Может, вы ещё предложите вопрошающих о нумерации записей результата отправлять не в здешний фак, а в справку по роу_намбер()?
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Объединение результатов запросов с общим полем date
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]