В данной публикации будут приведены несколько примеров выполнения запросов к базе данных основанной на СУБД SQLite3.
Задача 2. Исследование продаж телефонов
Откройте в IDE БД hw_2_database.db. Используя таблицы table_checkout и table_phones, найдите ответы на следующие вопросы:
- Телефоны какого цвета чаще всего покупают?
- Какие телефоны чаще покупают: красные или синие?
- Какой самый непопулярный цвет телефона?
База данных представляет собой две таблицы, в одной находятся описание продаваемых телефонов:
А в другой, статистика продаж этих телефонов:
Если телефонов у нас всего 9 моделей, то статистика продаж - огромная, несколько сотен записей. В данной задаче не требуется получить данные в одном запросе. Поэтому я сделал несколько запросов с сохранением их в переменные.
Задача 3. Анализ таблиц
Есть база данных hw_3_database.db, в которой находятся три таблицы: table_1, table_2 и table_3. Каждая таблица имеет структуру из двух столбцов: id (число) и value (строка).
Выполните запросы, которые дадут ответы на следующие вопросы:
- Сколько записей (строк) хранится в каждой таблице?
- Сколько в таблице table_1 уникальных записей?
Назовём уникальной такую запись, которая ранее не встречалась в таблице. - Как много записей из таблицы table_1 встречается в table_2?
- Как много записей из таблицы table_1 встречается и в table_2, и в table_3?
База данных представляет собой три таблицы, в которых содержатся однотипные данные, эти данные могут совпадать с данными таблиц 2 и 3. Выглядят так:
Ну и собственно решение с комментариями:
Задача 4. Исследование доходов населения
С помощью работы БД из Python вам нужно выполнить следующие задания:
- Выяснить, сколько человек с острова N находятся за чертой бедности, то есть получает меньше 5000 гульденов в год.
- Посчитать среднюю зарплату по острову N.
- Посчитать медианную зарплату по острову.
- Посчитать число социального неравенства F, определяемое как F = T/K, где T — суммарный доход 10% самых обеспеченных жителей острова N, K — суммарный доход остальных 90% людей. Вывести ответ в процентах с точностью до двух знаков после запятой.
Обезличенную БД жителей острова N вы можете найти в файле hw_4_database.db. В таблице salaries находятся уникальные идентификаторы людей и их заработные платы.
Опционально. Для решения задачи 4 используйте только один SQL-запрос.
В БД только одна таблица:
Вот какое получилось решение у данной задачи:
Ну вот, как-то так... Самый последний пункт долго мне мозг выедал, итак, и эдак подставлял "SELECT...FROM" - ошибка.... Но таки победил!
На этом всё!