Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пояснительная Записка (Вариант 18).doc
Скачиваний:
5
Добавлен:
24.04.2014
Размер:
211.46 Кб
Скачать

5) Задания. Результаты. Задания sql.

Задание:

1. Выдать общее количество деталей поставляемых для изделия Перфоратор поставщиком чей рейтинг меньше 20.

Решение:

select distinct count(md.detailid)

from maker, md

where maker.makerstatus<20 and

md.makerid=maker.makerid and

md.thingid=2;

Результат:

3

Задание:

2. Выдать, алфавитном порядке, фамилии поставщиков, поставляющих по красней мере одну деталь, поставляемую по крайней мере одним поставщиком, который поставляет, по крайней мере, одну деталь зеленого цвета.

Решение(Вариант без поздапроса):

select distinct maker.makerf

from maker

where detail.detailcolor='Green' and

md.detailid=detail.detailid and

maker.makerid=md.makerid;

Решение(Вариант с подзапросом):

select makerf

from maker

where makerid in

(select makerid

from md

where detailid in

(select detailid

from detail

where detailcolor='Green'))

order by makerf;

Результат:

MAKERF

'Abasov'

'Abdulin'

'Degtev'

'Rasskazov'

'Temnov'

'Zagainov'

Задания pl sql.

Задание:

1.Всем поставшикам, у которых рейтинг меньше 10 увеличить рейтинг на 1.

Решение:

declare ten int;

begin

ten:=10;

update maker

set makerstatus=makerstatus+1

where makerstatus<ten;

end;

Результат:

Рейтинг Загайнова увеличится на единицу.