Получение результатов 2 запросов из 1 таблицы с различными условиями где - PullRequest
0 голосов
/ 17 января 2019

У меня есть 2 запроса, которые я хотел бы объединить в один. Это из той же таблицы, но есть одно небольшое отличие в операторе where.

Я пробовал объединение, фильтрацию и использование нескольких операторов выбора в операторе выбора.

Запрос 1

Select date, count("speed of answer") as TotalCalls     
From five9_data.calllog     
Where Campaign IN ('FYF', 'SF') 
    and "Campaign Type" IN ('Inbound') 
    and "Time TO Abandon" is null     
Group By date     
Order By date Desc

Запрос 2

Select date, count("Time To Abandon") as AbandonCalls 
From five9_data.calllog 
Where Campaign IN ('FYF', 'SF') 
    and "Campaign Type" IN ('Inbound') 
    and "Time TO Abandon" > '0' 
Group By date 
Order By date Desc

Мне нужны Дата, Столбец с результатами из Всего звонков и результатами Отказаться от звонков в результатах. Если вы заметили, большая разница - это 3-е условие в выражении where обоих.

Ответы [ 2 ]

0 голосов
/ 17 января 2019

Выберите

дату, сумму ((«Время до отказа» равно нулю) :: int) в качестве TotalCalls,

   sum( ("Time TO Abandon" > 0)::int ) as AbandonCalls

Из Five9_data.calllog

ГдеIN кампании ('FYF', 'SF') и IN '' Тип кампании 'IN (' Inbound ')

Группировать по дате

Порядок по дате Desc;

0 голосов
/ 17 января 2019

Я думаю, вы хотите условное агрегирование:

Select date, sum( ("Time TO Abandon" is null)::int ) as TotalCalls,
       sum( ("Time TO Abandon" > 0)::int ) as AbandonCalls
From five9_data.calllog
Where Campaign IN ('FYF', 'SF') and "Campaign Type" IN ('Inbound') and
Group By date
Order By date Desc;
...