Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

db / Практика / 6 семестр / Контрольная / Контрольная работа №1 - Тарашев

.doc
Скачиваний:
40
Добавлен:
23.03.2015
Размер:
28.67 Кб
Скачать

Контрольная работа № 1 - Тарашев

  1. Выведите коды, фамилии и имена и должности сотрудников, которые не являются представителями.

SELECT КодСотрудника, Фамилия, Имя, Должность

FROM Сотрудники

WHERE Должность <>'Представитель'; (1)

  1. Выведите данные о сотрудниках в виде строк: «<обращение> <Имя>, <Фамилия> принят(а) на работу <дата приема>», например « г-жа Белова Мария принята на работу 01-май-1992».

SELECT Сотрудники.Обращение, Имя, Фамилия, 'Принят(а) на работу' AS [Дата приема], ДатаНайма

FROM Сотрудники; (0.5) Не использована конкатенация

  1. Для каждого сотрудника вывести минимальную, максимальную и среднюю стоимость доставки.

  2. Выведите названия и город клиентов, а также цену, количество, марку и тип заказанных ими товаров (результат упорядочить по названиям поставщиков и марке товаров).

  3. Выведите тип, марку и поставщика товаров, цена на которые находится в диапазоне от 1000 до 2000 рублей.

SELECT Марка, КодПоставщика, Категория, Цена

FROM Товары, Типы

WHERE Цена > 1000 and Цена < 2000; (0) Использовано декартово произведение вместо соединения, не использована таблица «Поставщики»

  1. Вывести с использованием функции SUBSTRING данные о поставщиках товаров, марка которых начинается на буквы `G` или `g`.

  2. Для каждого поставщика вывести количество товаров (которые он поставляет).

  3. Из таблицы «Сотрудники» выведите все должности, исключив при этом повторения.

SELECT DISTINCT Сотрудники.Должность

FROM Сотрудники; (1)

  1. Выведите марки фруктов.

SELECT Марка, Категория

FROM Товары, Типы

WHERE Категория = 'Фрукты'; (0) Опять использовано декартово произведение вместо соединения

  1. Сколько всего клиентов делали заказы в 1996 году?

SELECT Название, ДатаРазмещения

FROM Клиенты, Заказы

WHERE ДатаРазмещения <= #31/12/1996#; (0) следовало использовать функцию COUNT()

2.5 балла