Задача A. Добавление городов

Автор:О. Константинов   Ограничение времени:1 сек
Входной файл:test.sql   Ограничение памяти:256 Мб
Выходной файл:test.log  

Условие

В таблицу Cities нужно добавить города Vladivostok, Novosibirsk, Lesozavodsk. Для города Vladivostok нужно указать население: 604901. Структура таблицы:

Решение следует представить в виде текстового файла, содержащего несколько SQL-запросов. Запросы следует завершать символом ';'.

Ограничения

Полагается, что для работы с базой данных используется SQLite3.


Задача B. Добавление поля в таблицу

Автор:О. Константинов   Ограничение времени:1 сек
Входной файл:test.sql   Ограничение памяти:256 Мб
Выходной файл:test.log  

Условие

В таблицу Customers реляционной БД требуется добавить новое поле Email типа "TEXT", со значение по умолчанию "@mail.ru".

Решение следует представить в виде текстового файла, содержащего единственный SQL-запрос.

Ограничения

Полагается, что для работы с базой данных используется SQLite3.


Задача C. Классификация целых чисел

Автор:О. Константинов   Ограничение времени:1 сек
Входной файл:test.sql   Ограничение памяти:256 Мб
Выходной файл:test.log  

Условие

База данных представлена одной таблицей Numbers, в которой хранится набор целых чисел Value. Требуется классифицировать числа на положительные "positive", отрицательные "negative" и ноль "zero". Ниже представлено детальное DDL-описание таблицы:


TABLE Numbers ( -- хранит список целых чисел
    Value INTEGER NOT NULL -- целое число
                DEFAULT (0) 
);

Результатом выполнения запроса должен быть список кортежей (Value, Classification). Описание полей запроса:

Решение следует представить в виде текстового файла, содержащего единственный SQL-запрос.

Формат входного файла

Пример тестовой БД.

Ограничения

Полагается, что для работы с базой данных используется SQLite3.


Задача D. Прогресс обработки заявок

Автор:О. Константинов   Ограничение времени:1 сек
Входной файл:test.sql   Ограничение памяти:256 Мб
Выходной файл:test.log  

Условие

В сервисных центрах ИТ-компаний активно используется система управления инцидентами. Клиенты СЦ создают задачи task, где описывают возникшие проблемы и отправляют их сотрудникам СЦ. Задача имеет статус, который отражает степень её выполнения. Только что поступившая задача от клиента помечается как "new", когда задача полностью выполнена, сотрудники СЦ переводят её в статус "completed". Задача может находиться в любом статусе несколько раз, количество статусов не ограничено. Аналитик СЦ хочет оценить эффективность других сотрудников СЦ. Для это необходим SQL-запрос который возвращает совокупное количество задач в статусах "new" и "completed" для каждого дня за последние 30 дней (считать от времени создания последней задачи) в порядке следования дат в календаре. Требуется составить данный запрос.

Результатом выполнения запроса должен быть список кортежей (date, number_of_new, number_of_completed) отсортированный по возрастанию значений поля date и содержащий количество задач в статусах "new" и "completed", построенных за каждый день функционирования системы в течении 30 дней с даты самой актуальной задачи. Если одна и та же задача перешла в два разных статуса в один момент времени, то учитывается переход с максимальным id записи. Описание полей запроса:

Решение следует представить в виде текстового файла, содержащего единственный SQL-запрос.

Формат входного файла

Пример тестовой БД.

2017-12-29 1 0
2018-01-01 1 0
2018-01-02 2 0

Ограничения

Полагается, что для работы с базой данных используется SQLite3.


0.306s 0.014s 25