Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Проверка на NULL в ключах:
- select count(case when employee_id is null or producer_id is null or actuality_start is null then 0 end) from public.employee_new;
- Должен вернуть: число 0
- Вернул: число 0
- Интерпретация: количество NULL-элементов в колонках первичного ключа равно нулю, всё хорошо.
- Отсутствие дублей по ключу:
- select count(*) from public.employee_new;
- select count(*) from (select distinct employee_id, producer_id, actuality_start from public.employee_new t1) t2;
- Результаты выполнения обоих вопросов должны быть равны.
- Оба запроса вернули число 46.
- Интерпретация: количество уникальных троек первичного ключа в таблице должно быть равно количеству строк в таблице.
- Доработки:
- 1) Добавление и обязательность поля email:
- select count(case when email is null then 0 end) from public.employee_new;
- Должен вернуть: число 0
- Вернул: число 11
- Интерпретация: количество незаполненных полей email больше нуля, требования не выполнены.
- 2) Добавление и корректность поля age_code:
- select employee_id, birth_dt, age_code from public.employee_new
- where date_part('year', birth_dt) >= 1989 and date_part('year', birth_dt) < 1999 and age_code != '1'
- or date_part('year', birth_dt) >= 1979 and date_part('year', birth_dt) < 1989 and age_code != '2'
- or date_part('year', birth_dt) >= 1969 and date_part('year', birth_dt) < 1979 and age_code != '3'
- or (date_part('year', birth_dt) < 1969 or date_part('year', birth_dt) >= 1999) and age_code != '4'
- ;
- Должен вернуть: пустая таблица
- Вернул: 17 строк, везде неверно размечены сотрудники с годом рождения 1989
- Интерпретация: некоторые поля заполнены некорректно, требования не выполнены.
- 3) Приведение ФИО сотрудников к нужному виду:
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement