| Автор: | kroShot | Ограничение времени: | 1 сек | |
| Входной файл: | test.sql | Ограничение памяти: | 256 Мб | |
| Выходной файл: | test.log |
В базе данных хранится информация об игроках в Dungeons & Dragons и их персонажах.
Таблица players содержит информацию об игроках:
CREATE TABLE players (
id INTEGER NOT NULL PRIMARY KEY,
nickname VARCHAR(255) NOT NULL UNIQUE,
age INTEGER NOT NULL
);
Таблица characters содержит информацию о персонажах:
CREATE TABLE characters (
id INTEGER NOT NULL PRIMARY KEY,
player_id INTEGER NOT NULL,
race VARCHAR(255) NOT NULL,
class VARCHAR(255) NOT NULL,
FOREIGN KEY (player_id) REFERENCES players(id)
);
Схема БД в UML-нотации:
Каждый игрок может иметь любое количество персонажей.
Нужно составить запрос, который для каждой из 3 самых популярных комбинаций выдаст:
Результат отсортируйте по убыванию количества игроков, при равенстве - по названию расы, затем по названию класса.
Решение следует представить в виде текстового файла, содержащего единственный SQL-запрос.
Для тестовой базы корректный запрос вернёт:
Вердан|бард|4|33
Вердан|колдун|4|35
Кобольд|следопыт|4|47
Предполагается, что для работы с базой данных используется SQLite3.