PostgreSQL: как вернуть несколько строк в подзапросе и найти процент для каждой отдельной строки? - PullRequest
0 голосов
/ 02 июля 2018

Этот запрос должен найти процент ошибок, произошедших в конкретную дату, но я получаю одинаковый процент для всех дат. Есть ли способ вернуть несколько строк из подзапроса.

select date(time) as day , ((select date(time) as day, from log where status != '200 OK')/(select date(time) as day from log )) as views from log group by day;

Ответы [ 2 ]

0 голосов
/ 03 июля 2018

Попробуйте это

select date(time) as day , count(1) / tot_err as views
From log, (Select count(1) as tot_err from log where status != '200 OK') 
Where status != '200 OK'
group by day;
0 голосов
/ 02 июля 2018

Попробуйте это:

select
  date(time) as day,
  ((count(*) filter(where status!=200)) / 
  count(*)::decimal(5,2))::decimal(5,2)
from log
group by day
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...