Задание #1
Есть 2 таблицы:
employee - справочник сотрудников
tasks - задачи, назначенные на сотрудников
drop table if exists #employee create table #employee ( id smallint, emp_name varchar(255), rating int ) insert into #employee values (1,'Vasya',5) insert into #employee values (2,'Vasya',3) insert into #employee values (3,'Petya',9) insert into #employee values (4,'Igor',4) insert into #employee values (5,'Nikita',2) ;
drop table if exists #tasks create table #tasks ( id smallint, assignee_id smallint, rating smallint ) insert into #tasks values (1,1,5) insert into #tasks values (2,1,4) insert into #tasks values (3,2,2) insert into #tasks values (4,5,5) insert into #tasks values (5,5,1) insert into #tasks values (6,5,7) insert into #tasks values (7,5,9) insert into #tasks values (8,5,3) insert into #tasks values (9,5,3) insert into #tasks values (10,5,5) insert into #tasks values (11,2,7) insert into #tasks values (12,3,8) insert into #tasks values (13,3,8) insert into #tasks values (14,2,7) insert into #tasks values (15,3,9) insert into #tasks values (16,5,4) insert into #tasks values (17,1,5)
Необходимо написать SQL запрос, который покажет всех сотрудников, у кого в работе менее трех задач. Результат предоставить в виде:
имя сотрудника
количество задач в работе
Задание #2
Есть 2 таблицы:
payments_principal - платежи по основному долгу
payments_interest - платежи по процентам
drop table if exists #payments_principal create table #payments_principal ( payment_dt date, agr_id smallint, payment_sum int ) insert into #payments_principal values ('2019-05-11',31,8281) insert into #payments_principal values ('2019-05-12',7,4622) insert into #payments_principal values ('2019-05-13',5,7686) insert into #payments_principal values ('2019-07-01',1,9917) insert into #payments_principal values ('2019-07-23',1,6534) insert into #payments_principal values ('2019-08-20',64,4336) insert into #payments_principal values ('2019-08-24',3,7464) insert into #payments_principal values ('2019-08-25',9,8505) insert into #payments_principal values ('2019-08-27',1,9857) insert into #payments_principal values ('2019-07-07',7,6294) insert into #payments_principal values ('2019-07-17',7,3182) insert into #payments_principal values ('2019-08-28',4,9708) insert into #payments_principal values ('2019-08-29',4,8632) insert into #payments_principal values ('2019-08-30',3,8303) insert into #payments_principal values ('2019-09-01',7,3141) insert into #payments_principal values ('2019-08-25',1,9139) insert into #payments_principal values ('2019-08-25',2,7624) insert into #payments_principal values ('2019-09-01',7,3793) insert into #payments_principal values ('2019-09-01',3,3260) insert into #payments_principal values ('2019-08-21',5,9002) insert into #payments_principal values ('2019-08-22',2,5500) insert into #payments_principal values ('2019-05-12',7,4622) insert into #payments_principal values ('2019-08-23',2,3980) insert into #payments_principal values ('2019-08-29',2,5849) ;
drop table if exists #payments_interest create table #payments_interest ( payment_dt date, agr_id smallint, payment_sum int ) insert into #payments_interest values ('2019-05-11',31,98) insert into #payments_interest values ('2019-05-12',7,90) insert into #payments_interest values ('2019-05-13',5,39) insert into #payments_interest values ('2019-07-01',1,82) insert into #payments_interest values ('2019-07-23',1,59) insert into #payments_interest values ('2019-08-20',50,96) insert into #payments_interest values ('2019-08-24',3,1) insert into #payments_interest values ('2019-08-25',9,22) insert into #payments_interest values ('2019-08-27',1,95) insert into #payments_interest values ('2019-07-07',7,79) insert into #payments_interest values ('2019-07-17',7,72) insert into #payments_interest values ('2019-08-28',4,61) insert into #payments_interest values ('2019-08-29',4,49) insert into #payments_interest values ('2019-08-30',3,78) insert into #payments_interest values ('2019-09-01',7,29) insert into #payments_interest values ('2019-08-25',1,88) insert into #payments_interest values ('2019-08-25',2,77) insert into #payments_interest values ('2019-09-01',6,6) insert into #payments_interest values ('2019-09-01',3,18) insert into #payments_interest values ('2019-08-21',5,15) insert into #payments_interest values ('2019-08-22',2,28) insert into #payments_interest values ('2019-08-23',2,23) insert into #payments_interest values ('2019-08-29',2,84)
Необходимо написать SQL запрос, который покажет сумму платежей по основному долгу и процентам. Суммы необходимо считать только по тем договорам, которые платили и основной долг, и проценты. Результат предоставить в виде:
id договора
сумма платежей по основному долгу
сумма платежей по процентам.
Задание #3
Ниже представлен график с количеством клиентов, которые закрыли кредит в конкретный день. Линиями отображается Retention X days, т.е. доля клиентов (из зелёного столбца), взявших повторный кредит в течение X дней.
Пример: 2-го сентября закрылось 4000 кредитов, из них сразу же в дату закрытия 20% клиентов взяли повторный кредит (0 days, голубая линия). К концу следующего дня – уже 35% (т.е. 20% в день закрытия и еще 15% на следующий день).
Итак, на графике показана динамика по поколениям закрытых кредитов (дата = поколение), и каждая точка на линиях Retention привязана к конкретному поколению. Retention линии по одному поколению идут накопительным итогом, кумулятивно от меньшего срока (0 дней) к большему (30 дней).
Допустим, что сегодня 23 сентября. Скажите, какие выводы можно сделать на основе этого графика? Есть ли какие-то логические ошибки на графике?
Задание #4
Вам предоставлена выборка данных, в которой содержится информация по заявкам (строчка в таблице) за определенный период времени.
В предоставленный промежуток времени произошло ухудшение конверсии к completed заявкам, что негативно повлияло на выручку компании.
Необходимо разобраться чем обусловлено такое падение и найти «корень проблемы».
Для выполнения задачи необходимо всю выборку сначала перенести в базу данных (представьте, что вы работаете с реальной SQL таблицей) и затем уже работать с SQL таблицей.
Также постройте отчет в Power BI и визуально отобразите следующее:
- Иерархиями отобразите количество заявок в разрезе дней и недель
- Метрику Completed rate
- Таблицу (матрицу) в разрезе дней где будут иерархией отображены отношения up_stage, mid_stage, page_status, sub_stage к количеству заявок (см. скрин ниже как пример отображения)