У меня есть таблица, которая дает следующие входные данные sql-запроса.SQL-агрегация по группам по предложению
select server, count(*) from ServerNames where server is not null and server != '' and timestamp >= '2015-03-18'
and timestamp <= '2015-04-19' group by server;
Server | Count(*)
_________________
Server1 1700
Server2 1554
select server, ip_address, count(*) from serverNames where server is not null and server != '' and ip_address is not null and ip_address != '' and timestamp >= '2015-03-18'
and timestamp <= '2015-04-19' group by server, ip_address;
Server | ip_address | count(*)
______________________________________
Server1 Sample_ip_1 14
Server2 Sample_ip_2 209
Server1 Sample_ip_2 100
Server1 Sample_ip_1 50
Мне сложно написать запрос, который вычисляет процент внутри группы. Так, например, в моем примере вывод должен быть.
Server | ip_address | Count(*) | percent
________________________________________________
Server1 Sample_ip_1 14 0.82% (14/1700)
Server2 Sample_ip_2 209 13.44%(209/1554)
Server1 Sample_ip_2 100 5.88%(100/1700)
Server2 Sample_ip_1 50 3.217(15/1554)
Как написать запрос для этого?
Счетчик (*) со второго выхода/счетчика (*) от первого. – station
присоединяется к двум запросам и вычисляет проценты таким образом –