Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Выборка из трех таблиц с агрегированием
|
|||
|---|---|---|---|
|
#18+
Добрый день, с ночи бьюсь над след задачкой \d groups; id integer name character varying(255) \d users; id integer groupid integer ipaddress inet \d traffic id ipaddress date ingress egress Те есть таблица с группами, в каждую группу входят пользователи, у каждого пользователя есть ip адрес. В таблице трафик хранится информация о том сколько трафика было для каждого ip адреса в конкретный день. Не получается подсчитать трафик группы, те необходимо вывести group.name traffic group.name traffic group.name traffic ... Я так понимаю что сначала мы делаем JOIN чтобы получить все IP адреса которые входят в группу (select ipaddress from groups, users where groups.id = groupid and ipaddress <> '0.0.0.0') ; затем получить трафик на каждый из ip адресов select traffic.ipaddress,sum(ingress) as ingress,sum(egress) as egress from traffic where traffic.date >= '2008-01-01' and traffic.date < '2008-02-01' and GROUP BY traffic.ipaddress ORDER BY traffic.ipaddress ; а как это все вместе соединить ума не приложу. помогите пожалуйста ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2008, 09:39 |
|
||
|
Выборка из трех таблиц с агрегированием
|
|||
|---|---|---|---|
|
#18+
select groups.name, sum(ingress) as ingress, sum(egress) as egress from groups, users, traffic where groups.id=users.groupid and users.ipaddress=traffic.ipaddress and traffic.date >= '2008-01-01' and traffic.date < '2008-02-01' group by group.name ORDER BY group.name; или select ... from groups join users on (groups.id=users.groupid) join traffic on (users.ipaddress=traffic.ipaddress) where traffic.date >= '2008-01-01' and traffic.date < '2008-02-01' group by ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.01.2008, 10:26 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=35067376&tid=2004717]: |
0ms |
get settings: |
6ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
48ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
26ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 313ms |

| 0 / 0 |
