Добавить юзера c обычной подпиской

Стань тестировщиком сегодня
Практический тренинг по SQL
Думаю самое время применить на практике, все что ты выучил в уровне, время для настоящего SQL сражения! В этот уровне попадутся задания как из первой базы данных так и со второй, повторять их описание мы не будем, а только напомним схемы. Мы верим в тебя уже опытный джедай SQL, построй правильный запросы, и тебе откроются тайны древних сражений.
В этом задании запросы на голову сложнее чем в предыдущих двух уровнях, обрати внимание, что практически во всех запросах прйдеться употребить JOIN, LEFT JOIN или INNER JOIN, так что повтори эти темы еще раз перед началом практики.

Understand the structure of tables well before you start writing queries. In any case, return to the diagram as soon as you need it.

Рассматривается БД кораблей, участвовавших во второй мировой войне. Имеются следующие отношения:
Classes (class, type, country, numGuns, bore, displacement)
Ships (name, class, launched)
Battles (name, date)
Outcomes (ship, battle, result)
Корабли в «классах» построены по одному и тому же проекту, и классу присваивается либо имя первого корабля, построенного по данному проекту, либо названию класса дается имя проекта, которое не совпадает ни с одним из кораблей в БД. Корабль, давший название классу, называется головным.
Отношение Classes содержит имя класса, тип (bb для боевого (линейного) корабля или bc для боевого крейсера), страну, в которой построен корабль, число главных орудий, калибр орудий (диаметр ствола орудия в дюймах) и водоизмещение ( вес в тоннах).
В отношении Ships записаны название корабля, имя его класса и год спуска на воду.
В отношение Battles включены название и дата битвы, в которой участвовали корабли, а в отношении Outcomes – результат участия данного корабля в битве (потоплен-sunk, поврежден - damaged или невредим - OK).
Замечания. 1) В отношение Outcomes могут входить корабли, отсутствующие в отношении Ships. 2) Потопленный корабль в последующих битвах участия не принимает.
Схемы базы данных "Сражения кораблей" и "Компьютерная фирма"



1. Найдите среднюю цену ПК и Ноутбуков, выпущенных производителем A (латинская буква). Вывести: одна общая средняя цена.
2. Укажите корабли, потопленные в сражениях в Северной Атлантике (North Atlantic). Вывод: ship.
3. Найдите класс, имя и страну для кораблей из таблицы Ships, имеющих не менее 10 орудий.
4. Найдите названия кораблей, потопленных в сражениях, и название сражения, в котором они были потоплены.
5. Найдите классы кораблей, в которых хотя бы один корабль был потоплен в сражении.
6. Найдите сражения, в которых участвовали корабли класса Kongo из таблицы Ships.
7. Перечислите названия головных кораблей, имеющихся в базе данных (учесть корабли в Outcomes).
8. Найдите классы, в которые входит только один корабль из базы данных (учесть также корабли в Outcomes).
9. Найдите страны, имевшие когда-либо классы обычных боевых кораблей ('bb') и имевшие когда-либо классы крейсеров ('bc').
10. Для каждого корабля, участвовавшего в сражении при Гвадалканале (Guadalcanal), вывести название, водоизмещение и число орудий.