- life-sql/ 01. Задача Life - Генерация поколений жизни игры "LIFE"
- alhemy-sql/ 02. Задача Алхимия
- light-sql/ 03. Упражнения по SQL
- bp-triggers-sql/ 04. Реализация бизнес-логики через триггеры, механизм логирования
См. также другие проекты по SQL, PL/SQL
Дана таблица Life, содержащая сведения о конфигурациях игры «Жизнь» Конвея на бесконечной плоскости, со структурой:
- x – номер столбца (координата клетки по горизонтали);
- y – номер строки (координата клетки по вертикали);
- Gen – номер поколения.
Тип всех полей – целые числа.
Если в клетке с координатами x и y в поколении с номером gen существует жизнь, то в таблице Life существует запись {x, y, gen}. Клетки, в которых жизни нет, в таблице не отражены.
Написать команду INSERT (1 штука :), которая выполнит следующее:
- Определит максимальный номер поколения жизни в таблице Life;
- Вставит в таблицу Life записи, описывающие следующее за найденным на 1 шаге поколением жизни.
Использовать хранимые процедуры нельзя.
Даны таблицы
- Алхимические ингредиенты - Spices
ID_spice | Name_of_spice |
---|---|
1 | Жир тролля |
2 | Уши эльфа |
3 | Шерсть хоббита |
... | ... |
- Эффекты зелий - Effects_of_potions
ID_effect | Effects_of_potions |
---|---|
1 | Восстановление здоровья |
2 | Увеличение силы |
3 | Урон огнём |
... | ... |
- Свойства ингредиентов - mm_Spices_Effects
ID_spice | ID_effect |
---|---|
... | ... |
Таблица «Свойства ингредиентов» разрешает отношение многие-ко-многим между первыми двумя таблицами. У одного ингредиента может быть от 1 до 4 потенциальных эффектов.
Правила алхимии.
-
При изготовлении зелья можно смешать до 3-х ингредиентов
-
Если в какой-либо паре смешиваемых ингредиентов есть один или более совпадающих эффектов, то изготовленное зелье будет обладать соответствующим эффектом (эффектами)
Написать SQL-запрос, который возвращает составы зелий, имеющих 5 или более эффектов
Каково максимально возможное количество эффектов в зелье?
Несколько небольших задач по пересечениям, сортировке, фильтрациям