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

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

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

Контрольная работа № 1 - Козулин

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

SELECT Сотрудники.Фамилия, Сотрудники.Имя, Сотрудники.КодСотрудника

FROM Сотрудники

WHERE (((Сотрудники.[Должность])<>'Представитель')); (1) не указана должность во фразе select

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

SELECT Обращение, Имя, Фамилия, ДатаНайма

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

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

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

SELECT Клиенты.Название, Клиенты.Город, Заказано.КодТовара, Заказано.Цена, Заказано.Количество

FROM Клиенты, Заказано; (0)

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

SELECT Товары.Марка, Товары.КодТипа

FROM Товары

WHERE (((Товары.Цена)>1000 And (Товары.Цена)<2000)); (0.5) надо соединить с типами и поставщиками

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

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

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

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

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

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

SELECT КодТипа.Товары, Марка.Товары

FROM Товары

WHERE (((Товары.[КодТипа])<>'Фрукты'));

(0) Ошибка, сравнение числового типа со строковым

надо было соединить с типами и сравнить Типы.Категория со строкой

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

SELECT DISTINCT COUNT(k.Название) AS [Количество клиентов]

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

WHERE (k.КодКлиента= z.КодКлиента)

AND (ДатаИсполнения BETWEEN #1/1/1996# And #12/31/1996#);

  1. проблема в том, что DISTINCT применяется после выполнения COUNT() и поэтому не играет роли

2.5 балла

Соседние файлы в папке Контрольная