Поскольку ваше время хранится в виде varchar и в Redshift нет типа Time
или Interval
, вам придется преобразовать это mm:ss
в число, чтобы вы могли взять среднее значение (как вы можете средняя строка / varchar).
Вы можете использовать функцию SPLIT_PART
, чтобы разделить строку, указав разделитель, и получить ее часть, а затем применить математические вычисления, чтобы получить десятичное представление вашего времени:
SELECT date,
"agent name",
avg(SPLIT_PART("handle time", ':', 1)::decimal(18,2)*60.00 + SPLIT_PART("handle time", ':', 2)::decimal(18,2) + SPLIT_PART("handle time", ':', 3)::decimal(18,2)/60.00) as AvgHandleTime
From five9_data.calllog
Where Skill in ('SF Sales', 'FYF Sales')
Group By "agent name", date
Order By Date DESC
Limit 100;
У меня нет экземпляра красного смещения, чтобы проверить это, но он должен привести вас в стадион.
ОБНОВЛЕНО: я обновил учетную запись в формате hh:mm:ss
. Здесь мы конвертируем в минуты в десятичной форме (как мы были раньше).