Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [SQL] Есть база нужно выполнить запросы.


Автор: nefestim 27.5.2008, 20:24
В файле база нужно написать запросы для:

1.- Определите классы всех американских кораблей (USA), водоизмещение которых больше водоизмещения любого британского класса (Gt.Britain).

2.- Перечислите названия потопленных кораблей с минимальным числом главных орудий.

3.- Определить названия всех кораблей из таблицы Ships, которые удовлетворяют, по крайней мере, комбинации любых четырёх критериев из следующего списка: numGuns = 8 bore = 15 displacement = 32000 type = bb launched = 1915 class=Kongo country=USA

4.- Найдите классы, в которые входит только один корабль из базы данных (учесть также корабли в Outcomes).

5.- Найдите названия всех кораблей в базе данных, заканчивающихся на букву a.

6.- Для классов, имеющих потери в виде потопленных кораблей и не менее 3 кораблей в базе данных, вывести имя класса и число потопленных кораблей.

7.- Для каждой страны определить год, когда на воду было спущено максимальное количество ее кораблей. В случае, если окажется несколько таких лет, взять минимальный из них. Вывод: страна, количество кораблей, год.

Автор: Fortop 27.5.2008, 20:36
nefestim, 
ну прямо асясяй ведь.

Ты сам себя тестируешь или для дяди?
Решаетя эта задача, с учетом незнания особенностей MS SQL пару часов ушло smile но решается smile

Добавлено через 35 секунд
Тем более что аналогичная была ранее, запрос переделать всего лишь.

Автор: nefestim 27.5.2008, 21:13
Не для себя :( 

Автор: comtat 11.6.2008, 12:29
1)  
Код

select class from `classes`
where country = 'USA' and
      displacement > (select max(displacement)
                     from `classes`
                     where country = 'Gt.Britain')

3) 
Код
select name from `ships` s
inner join `classes` c on c.class = s.class
where numGuns = 8 or bore = 15 or displacement = 32000 or
      `type` = 'bb' or launched = 1915 or s.class='Kongo' or country='USA'

5) 
Код
select name from `ships` where name like '%a'

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)