106 lines
2.8 KiB
SQL
106 lines
2.8 KiB
SQL
CREATE OR REPLACE VIEW aw_workforce.v_workforce_productivity_daily AS
|
|
SELECT
|
|
event_date,
|
|
branch,
|
|
department,
|
|
activity_type,
|
|
category,
|
|
productivity_class,
|
|
sum(duration_sec) AS duration_sec,
|
|
sum(event_count) AS event_count,
|
|
sum(unknown_subject_events) AS unknown_subject_events,
|
|
sum(unknown_category_events) AS unknown_category_events
|
|
FROM aw_workforce.agg_workforce_productivity_hourly
|
|
GROUP BY
|
|
event_date,
|
|
branch,
|
|
department,
|
|
activity_type,
|
|
category,
|
|
productivity_class;
|
|
|
|
CREATE OR REPLACE VIEW aw_workforce.v_workforce_unknown_subjects AS
|
|
SELECT
|
|
host_name,
|
|
user_login,
|
|
count() AS events,
|
|
sum(duration_sec) AS duration_sec
|
|
FROM aw_workforce.aw_window_events
|
|
WHERE dictGetUInt8OrDefault(
|
|
'aw_workforce.dict_workstation_user',
|
|
'is_active',
|
|
(host_name, user_login),
|
|
0
|
|
) != 1
|
|
OR dictGetStringOrDefault(
|
|
'aw_workforce.dict_workstation_user',
|
|
'employee_name',
|
|
(host_name, user_login),
|
|
''
|
|
) = ''
|
|
GROUP BY
|
|
host_name,
|
|
user_login
|
|
ORDER BY duration_sec DESC;
|
|
|
|
CREATE OR REPLACE VIEW aw_workforce.v_workforce_unknown_processes AS
|
|
SELECT
|
|
process_name,
|
|
count() AS events,
|
|
sum(duration_sec) AS duration_sec
|
|
FROM aw_workforce.aw_window_events
|
|
WHERE dictGetUInt8OrDefault(
|
|
'aw_workforce.dict_application_category',
|
|
'is_active',
|
|
process_name,
|
|
0
|
|
) != 1
|
|
OR dictGetStringOrDefault(
|
|
'aw_workforce.dict_application_category',
|
|
'category',
|
|
process_name,
|
|
''
|
|
) IN ('', 'unknown')
|
|
GROUP BY process_name
|
|
ORDER BY duration_sec DESC;
|
|
|
|
CREATE OR REPLACE VIEW aw_workforce.v_workforce_unknown_domains AS
|
|
WITH
|
|
lowerUTF8(
|
|
domain(if(position(url, '://') = 0, concat('http://', url), url))
|
|
) AS domain_name
|
|
SELECT
|
|
domain_name,
|
|
count() AS events,
|
|
sum(duration_sec) AS duration_sec
|
|
FROM aw_workforce.aw_browser_events
|
|
WHERE domain_name != ''
|
|
AND (
|
|
dictGetUInt8OrDefault(
|
|
'aw_workforce.dict_domain_category',
|
|
'is_active',
|
|
domain_name,
|
|
0
|
|
) != 1
|
|
OR dictGetStringOrDefault(
|
|
'aw_workforce.dict_domain_category',
|
|
'category',
|
|
domain_name,
|
|
''
|
|
) IN ('', 'unknown')
|
|
)
|
|
GROUP BY domain_name
|
|
ORDER BY duration_sec DESC;
|
|
|
|
CREATE OR REPLACE VIEW aw_workforce.v_workforce_unknown_quality_daily AS
|
|
SELECT
|
|
event_date,
|
|
sum(event_count) AS events,
|
|
sum(unknown_subject_events) AS unknown_subject_events,
|
|
round(unknown_subject_events / nullIf(events, 0), 4) AS unknown_subject_ratio,
|
|
sum(unknown_category_events) AS unknown_category_events,
|
|
round(unknown_category_events / nullIf(events, 0), 4) AS unknown_category_ratio
|
|
FROM aw_workforce.agg_workforce_productivity_hourly
|
|
GROUP BY event_date
|
|
ORDER BY event_date DESC;
|