- •Актуальность.
- •Целевая аудитория.
- •Требования к базе.
- •Сущности и связи:
- •Описание полей.
- •Функциональные зависимости.
- •Sql листинги:
- •Insert (Вставка данных):
- •1. Вывод всех физических способностей, с силой больше 20 и указать класс этой способности.
- •2. Вывод правителей и наследников
- •3. Вывод всех способностей и сопротивлений, которые дает специализации храмовник и паладин. Должно вывестись id, название способности, мощность и описание.
- •4. Вывод всех споосбностей и сопротивлений,которые дают расы эльф, человек и гном из разных вселенных.
- •5. Вывод имени персонажа, который является и героем и правителем страны, его звание, расу и бога (богов) в которых он верит.
- •6. Вывод персонажей и богов, в которых они верят, а также расы к которой они принадлежат и их специализации, если она есть
- •7. Вывод всех стран в базе, Миров в которых они находятся, месторасположение, а также количество персонажей в этой стране, который находятся в базе.
- •8. Вывод персонажей являющихся родственниками (представителями клана)
- •9. Вывод добрых богов и благословений которые они дают, а также способности благословений и число людей которые в них верят.
- •10. Вывод героя с максимальным уровнем.
1. Вывод всех физических способностей, с силой больше 20 и указать класс этой способности.
Вывестись должно название способности, формы и класса, а также последствия способности.
SELECT `id_ability`, `a`.`name` AS 'ABILITY NAME',
`f`.`name` AS 'FORM NAME', `a`.`repercusion`, `r`.`type`
FROM `ability` AS `a`, `form` AS `f`, `rank` AS `r`
WHERE `a`.`id_form`=1
AND
`f`.`id_form`=1
AND
`r`.`id_rank`=`a`.`id_rank`
AND
`power`>20;
SELECT `id_ability`, `a`.`name` AS 'ABILITY NAME',
`f`.`name` AS 'FORM NAME', `a`.`repercusion`, `r`.`type`
FROM `ability` AS `a`, `form` AS `f`, `rank` AS `r`
WHERE `r`.`type`='robber'
AND
`f`.`id_form`=`a`.`id_form`
AND
`r`.`id_rank`=`a`.`id_rank`;
2. Вывод правителей и наследников
SELECT TRIM(CONCAT(
IFNULL( (
SELECT `name`
FROM `character`
WHERE
`id_character` = `heirs`.`id_character`
), '' ),
' heirs of ',
IFNULL( (
SELECT `name`
FROM `character`
WHERE
`id_character` = `governor`.`id_character`
), '' )
)) AS `HEIRS VS GOVERNOR`
FROM `governor`, `heirs`
WHERE `heirs`.`id_governor`=`governor`.`id_governor`;
3. Вывод всех способностей и сопротивлений, которые дает специализации храмовник и паладин. Должно вывестись id, название способности, мощность и описание.
SELECT `a`.`id_ability` AS 'ID',
`a`.`name`, `a`.`power`,
`a`.`repercusion`,
`s`.`name`as 'SPEC'
FROM `ability` AS `a`,
`ability_specialization` AS `a_s`,
`specialization` AS `s`
WHERE (`s`.`name`='templar'
OR
`s`.`name`='paladin')
AND
`a`.`id_ability`=`a_s`.`id_ability`
AND
`s`.`id_specialization`=`a_s`.`id_specialization`
UNION
SELECT `ss`.`id_suscebtibility` AS 'ID',
`ss`.`name`,
`ss`.`power`,`ss`.`repercusion`,
`s`.`name` as 'SPEC'
FROM `suscebtibility` AS `ss`,
`suscebtibility_specialization` AS `s_s`,
`specialization` AS `s`
WHERE (`s`.`name`='templar'
OR
`s`.`name`='paladin')
AND
`ss`.`id_suscebtibility`=`s_s`.`id_suscebtibility`
AND
`s`.`id_specialization`=`s_s`.`id_specialization`;
4. Вывод всех споосбностей и сопротивлений,которые дают расы эльф, человек и гном из разных вселенных.
SELECT `a`.`id_ability` AS 'ID',
`a`.`name`, `a`.`power`,
`a`.`repercusion`,
`r`.`name` AS 'RACE',
`u`.`name` AS 'UNIVERSE'
FROM `ability` AS `a`,
`ability_race` AS `a_r`,
`race` AS `r`,
`universe` AS `u`
WHERE (`r`.`name`='human'
OR
`r`.`name`='elf'
OR
`r`.`name`='gnomes')
AND
`a`.`id_ability`=`a_r`.`id_ability`
AND
`r`.`id_race`=`a_r`.`id_race`
AND
`u`.`id_universe`=`r`.`id_universe`
UNION
SELECT `ss`.`id_suscebtibility` AS 'ID',
`ss`.`name`,
`ss`.`power`,`ss`.`repercusion`,
`r`.`name` AS 'RACE',
`u`.`name` AS 'UNIVERSE'
FROM `suscebtibility` AS `ss`,
`suscebtibility_race` AS `s_r`,
`race` AS `r`,
`universe` AS `u`
WHERE (`r`.`name`='human'
OR
`r`.`name`='elf'
OR
`r`.`name`='gnomes')
AND
`ss`.`id_suscebtibility`=`s_r`.`id_suscebtibility`
AND
`r`.`id_race`=`s_r`.`id_race`
AND
`u`.`id_universe`=`r`.`id_universe`;
