проценты в PostgreSQL с датами - PullRequest
       2

проценты в PostgreSQL с датами

0 голосов
/ 14 декабря 2018

Я пытаюсь выполнить запрос, в котором выходные данные должны показывать дату и процентное значение того, сколько раз запрос был неудачным.

схема таблицы

enter image description here

выборочные значения

enter image description here

мой запрос

select 
time::timestamp::date, 
(count(*) * 100 / (select count(*) from log group by time::timestamp::date))
from log where status like '%404%' group by time::timestamp::date;

Я получаю сообщение о том, что подзапросом возвращено более одного запроса, как я могу сделать запрос для вывода процента для каждого значения даты.

Мне нужен вывод в этом формате

enter image description here

1 Ответ

0 голосов
/ 14 декабря 2018

Я думаю, что вы хотите:

select time::timestamp::date,
       avg( (status like '%404%')::int ) as fail_ratio
from log
group by time::timestamp::date;

Преобразует логическое значение в целое число - 1 для true и 0 для false.Среднее затем рассчитывает коэффициент.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...