Add time fields conversion

This commit is contained in:
Anna Saiapina 2024-07-04 14:14:58 +00:00 committed by GCP Dataform
parent 3e37926450
commit 966b0c4615

View File

@ -25,15 +25,39 @@ select DAY_OF_WEEK,
COALESCE(DISPOSITION, '[Not Defined]') AS DISPOSITION, COALESCE(DISPOSITION, '[Not Defined]') AS DISPOSITION,
AGENT_NAME, AGENT_NAME,
ANI, ANI,
CALL_TIME, regexp_replace(
RING_TIME, cast(time(timestamp_seconds(cast(CALL_TIME as int))) as string),
TALK_TIME, r'^\d\d',
AFTER_CALL_WORK_TIME,-- cast(extract(hour from time(timestamp_seconds(cast(CALL_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(CALL_TIME as int)))) as string)
) as CALL_TIME,
regexp_replace(
cast(time(timestamp_seconds(cast(RING_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(RING_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(RING_TIME as int)))) as string)
) as RING_TIME,
regexp_replace(
cast(time(timestamp_seconds(cast(TALK_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(TALK_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(TALK_TIME as int)))) as string)
) as TALK_TIME,
regexp_replace(
cast(time(timestamp_seconds(cast(AFTER_CALL_WORK_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(AFTER_CALL_WORK_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(AFTER_CALL_WORK_TIME as int)))) as string)
) as AFTER_CALL_WORK_TIME,
ABANDONED, ABANDONED,
COALESCE(AGENT_GROUP, '0') AS AGENT_GROUP, COALESCE(AGENT_GROUP, '0') AS AGENT_GROUP,
CALLS, CALLS,
SPEED_OF_ANSWER , regexp_replace(
TIME_TO_ABANDON, cast(time(timestamp_seconds(cast(SPEED_OF_ANSWER as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(SPEED_OF_ANSWER as int)))) + 24 * unix_date(date(timestamp_seconds(cast(SPEED_OF_ANSWER as int)))) as string)
) as SPEED_OF_ANSWER ,
regexp_replace(
cast(time(timestamp_seconds(cast(TIME_TO_ABANDON as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(TIME_TO_ABANDON as int)))) + 24 * unix_date(date(timestamp_seconds(cast(TIME_TO_ABANDON as int)))) as string)
) as TIME_TO_ABANDON,
TIMESTAMP, TIMESTAMP,
TIME_INTERVAL, TIME_INTERVAL,
ABANDON_RATE, ABANDON_RATE,
@ -67,33 +91,93 @@ select DAY_OF_WEEK,
SESSION_ID, SESSION_ID,
SIP_RESPONSE_CODE, SIP_RESPONSE_CODE,
SOA_MIN_THRESHOLD__sec_ SOA_MIN_THRESHOLD_SEC, SOA_MIN_THRESHOLD__sec_ SOA_MIN_THRESHOLD_SEC,
THIRD_PARTY_TALK_TIME, regexp_replace(
BILL_TIME__ROUNDED_ BILL_TIME_ROUNDED, cast(time(timestamp_seconds(cast(THIRD_PARTY_TALK_TIME as int))) as string),
CONFERENCE_TIME, r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(THIRD_PARTY_TALK_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(THIRD_PARTY_TALK_TIME as int)))) as string)
) as THIRD_PARTY_TALK_TIME,
regexp_replace(
cast(time(timestamp_seconds(cast(BILL_TIME__ROUNDED_ as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(BILL_TIME__ROUNDED_ as int)))) + 24 * unix_date(date(timestamp_seconds(cast(BILL_TIME__ROUNDED_ as int)))) as string)
) as BILL_TIME_ROUNDED,
regexp_replace(
cast(time(timestamp_seconds(cast(CONFERENCE_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(CONFERENCE_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(CONFERENCE_TIME as int)))) as string)
) as CONFERENCE_TIME,
CONFERENCES, CONFERENCES,
CONSULT_TIME, regexp_replace(
cast(time(timestamp_seconds(cast(CONSULT_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(CONSULT_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(CONSULT_TIME as int)))) as string)
) as CONSULT_TIME,
COST, COST,
DIAL_TIME, regexp_replace(
HANDLE_TIME, cast(time(timestamp_seconds(cast(DIAL_TIME as int))) as string),
HOLD_TIME, r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(DIAL_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(DIAL_TIME as int)))) as string)
) as DIAL_TIME,
regexp_replace(
cast(time(timestamp_seconds(cast(HANDLE_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(HANDLE_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(HANDLE_TIME as int)))) as string)
) as HANDLE_TIME,
regexp_replace(
cast(time(timestamp_seconds(cast(HOLD_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(HOLD_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(HOLD_TIME as int)))) as string)
) as HOLD_TIME,
HOLDS, HOLDS,
IVR_TIME, regexp_replace(
MANUAL_TIME, cast(time(timestamp_seconds(cast(IVR_TIME as int))) as string),
PARK_TIME, r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(IVR_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(IVR_TIME as int)))) as string)
) as IVR_TIME,
regexp_replace(
cast(time(timestamp_seconds(cast(MANUAL_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(MANUAL_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(MANUAL_TIME as int)))) as string)
) as MANUAL_TIME,
regexp_replace(
cast(time(timestamp_seconds(cast(PARK_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(PARK_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(PARK_TIME as int)))) as string)
) as PARK_TIME,
PARKS, PARKS,
PREVIEW_INTERRUPTED, PREVIEW_INTERRUPTED,
PREVIEW_INTERRUPTED_BY_CALL, PREVIEW_INTERRUPTED_BY_CALL,
PREVIEW_INTERRUPTED_BY_SKILL_VM, PREVIEW_INTERRUPTED_BY_SKILL_VM,
PREVIEW_TIME, regexp_replace(
cast(time(timestamp_seconds(cast(PREVIEW_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(PREVIEW_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(PREVIEW_TIME as int)))) as string)
) as PREVIEW_TIME,
QUEUE_CALLBACK_PROCESSING, QUEUE_CALLBACK_PROCESSING,
QUEUE_CALLBACK_REGISTERED, QUEUE_CALLBACK_REGISTERED,
QUEUE_CALLBACK_WAIT_TIME, regexp_replace(
QUEUE_WAIT_TIME, cast(time(timestamp_seconds(cast(QUEUE_CALLBACK_WAIT_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(QUEUE_CALLBACK_WAIT_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(QUEUE_CALLBACK_WAIT_TIME as int)))) as string)
) as QUEUE_CALLBACK_WAIT_TIME,
regexp_replace(
cast(time(timestamp_seconds(cast(QUEUE_WAIT_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(QUEUE_WAIT_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(QUEUE_WAIT_TIME as int)))) as string)
) as QUEUE_WAIT_TIME,
RATE, RATE,
TALK_TIME_LESS_HOLD_AND_PARK, TALK_TIME_LESS_HOLD_AND_PARK,
TOTAL_QUEUE_TIME, regexp_replace(
cast(time(timestamp_seconds(cast(TOTAL_QUEUE_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(TOTAL_QUEUE_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(TOTAL_QUEUE_TIME as int)))) as string)
) as TOTAL_QUEUE_TIME,
TRANSFERS, TRANSFERS,
VIDEO_TIME, regexp_replace(
cast(time(timestamp_seconds(cast(VIDEO_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(VIDEO_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(VIDEO_TIME as int)))) as string)
) as VIDEO_TIME,
AGENT, AGENT,
AGENT_EMAIL, AGENT_EMAIL,
AGENT_FIRST_NAME, AGENT_FIRST_NAME,
@ -147,7 +231,11 @@ select DAY_OF_WEEK,
VOICEMAILS, VOICEMAILS,
VOICEMAILS_DECLINED, VOICEMAILS_DECLINED,
VOICEMAILS_DELETED, VOICEMAILS_DELETED,
VOICEMAILS_HANDLE_TIME, regexp_replace(
cast(time(timestamp_seconds(cast(VOICEMAILS_HANDLE_TIME as int))) as string),
r'^\d\d',
cast(extract(hour from time(timestamp_seconds(cast(VOICEMAILS_HANDLE_TIME as int)))) + 24 * unix_date(date(timestamp_seconds(cast(VOICEMAILS_HANDLE_TIME as int)))) as string)
) as VOICEMAILS_HANDLE_TIME,
VOICEMAILS_HANDLED, VOICEMAILS_HANDLED,
VOICEMAILS_RETURNED_CALL, VOICEMAILS_RETURNED_CALL,
VOICEMAILS_TRANSFERRED, VOICEMAILS_TRANSFERRED,