powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Непростая группировка | select с функцией SUM() от столбца и ORDER BY
3 сообщений из 3, страница 1 из 1
Непростая группировка | select с функцией SUM() от столбца и ORDER BY
    #33022111
kaN5300
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Итак, имеем вот такую табличку:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
+-------------+----------------------+------+-----+---------+----------------+
| Field       | Type                 | Null | Key | Default | Extra          |
+-------------+----------------------+------+-----+---------+----------------+
| id          | int( 10 ) unsigned     |      | PRI | NULL    | auto_increment |
| ip_saddr    | varchar( 16 )          | YES  |     | NULL    |                |
| ip_daddr    | varchar( 16 )          | YES  |     | NULL    |                |
| ip_protocol | tinyint( 3 ) unsigned  | YES  |     | NULL    |                |
| ip_totlen   | smallint( 5 ) unsigned | YES  |     | NULL    |                |
| tcp_sport   | smallint( 5 ) unsigned | YES  |     | NULL    |                |
| tcp_dport   | smallint( 5 ) unsigned | YES  |     | NULL    |                |
| udp_sport   | smallint( 5 ) unsigned | YES  |     | NULL    |                |
| udp_dport   | smallint( 5 ) unsigned | YES  |     | NULL    |                |
| udp_len     | smallint( 5 ) unsigned | YES  |     | NULL    |                |
+-------------+----------------------+------+-----+---------+----------------+

Хотим получить Top-10 по траффику, для этого нам надо сгруппировать все ip_saddr просуммировать ip_totlen при группировке и отсортировать полученный траффик по убывающей.

Вот чего я смог добиться:

Код: plaintext
1.
2.
mysql> select ip_saddr,ip_daddr,sum(ip_totlen)/ 1024 / 1024  
from ulog group by ip_saddr order by ip_totlen;

Группирует, суммирует, но ORDER не возможно "объяснить" что надо рулить уже измененным параметром ip_totlen над которым я уже успел произвести операцию SUM(). Как мне добиться желаемого результата?
...
Рейтинг: 0 / 0
Непростая группировка | select с функцией SUM() от столбца и ORDER BY
    #33022142
Фотография Хрен
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
select ip_saddr,ip_daddr,sum(ip_totlen)/1024/1024 as my_new_field
from ulog group by ip_saddr order by my_new_field;

ты это имел в виду?
...
Рейтинг: 0 / 0
Непростая группировка | select с функцией SUM() от столбца и ORDER BY
    #33022407
kaN5300
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хренselect ip_saddr,ip_daddr,sum(ip_totlen)/1024/1024 as my_new_field
from ulog group by ip_saddr order by my_new_field;

ты это имел в виду?

То! Спасибо большое!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Непростая группировка | select с функцией SUM() от столбца и ORDER BY
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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