Получение обобщенных данных для формирования отчетов и создание запросов с данными из нескольких таблиц и подзапросами

Отчет по лабораторной работе должен содержать протокол вашей работы с учебной

и собственной БД: команды после исправления всех ошибок и результаты выдачи по запросам.

I. Выполните все примеры из лекций по созданию запросов с учебной БД.

П.   Создайте новые запросы для работы с учебной БД:

1. Напишите запрос, который сосчитал бы все суммы приобретений на 3 октября.

2. Напишите запрос, который сосчитал бы число различных     значений поля city в таблице Заказчиков.

3. Напишите запрос, который выбрал бы наименьшую сумму приобретений для каждого заказчика.

4. Напишите запрос, который бы выбирал заказчиков в алфавитном порядке, чьи имена начинаются с буквы G.

5. Напишите запрос, который выбрал бы высшую оценку в каждом городе.

6. Напишите запрос, который сосчитал бы число заказчиков,  регистрирующих каждый день свои порядки. (Если продавец имел более одного   порядка в данный день, он должен учитываться только один раз.

7. Напишите запрос, который бы формировал отчет со следующими данными:

номер продавца, фамилия, сумма комиссионных, полученная этим продавцом при оформлении всех покупок (заголовки столбцов должны отражать их содержимое)

8. Напишите запрос к таблице Заказчиков, который мог бы найти высшую оценку в каждом городе. Вывод должен быть в такой форме:

Для города (city),наивысшая оценка — : (rating).

9. Напишите запрос, который выводил бы список заказчиков в порядке убывания оценки. Вывод поля оценки (rating ) должен сопровождаться именем заказчика и его номером.

10. Напишите запрос, который бы выводил сумму приобретений на каждый день и помещал результаты в порядке убывания даты.

11.  Напишите  запрос,   который  бы  вывел  список  номеров  порядков, сопровождающихся именем продавца, который создавал эти порядки.

12. Напишите запрос, который бы формировал отчет со следующими данными:

имена продавца и заказчика для каждого порядка после номера порядков.

13. Напишите запрос, который бы выводил всех заказчиков, обслуживаемых продавцом с комиссионными выше 12%. Выведите имя заказчика, имя продавца, и  комиссионные продавца.

14. Напишите запрос, который вычислил бы сумму комиссионных продавца для каждого порядка заказчика с оценкой выше 100.

15. Напишите запрос, который бы вывел все пары продавцов, живущих в одном и том же городе. Исключите комбинации продавцов с ними же, а также дубликаты строк, выводимых в обратным порядке.

16. Напишите запрос, который вывел бы все пары порядков по данным заказчикам, имена этих заказчиков, и исключал дубликаты из вывода, как в предыдущем вопросе.

17. Напишите запрос, который вывел бы имена (сnum) и города(city) всех заказчиков с такой же оценкой (rating), как у Hoffmana. Напишите запрос, использующий поле cnum Hoffmana, а не его оценку, так чтобы оно могло быть использовано, если его оценка вдруг изменится.

18. Напишите запрос, который бы использовал  подзапрос для получения всех порядков для заказчика с именем Cisneros. Предположим, что вы не знаете номера этого заказчика, указываемого в поле cnum.

19. Напишите запрос, который бы выбрал общую сумму всех приобретений в порядках для каждого продавца, у которого эта общая сумма больше, чем сумма наибольшего  приобретения в таблице.

III. Работа с собственной БД:

1. Придумайте 10 словесных формулировок запросов с использованием агрегатных функций, объединения таблиц и подзапросов для своей БД.

2. Для каждой из словесных формулировок напишите запрос на SQL и выполните его.

Ссылка на основную публикацию
Adblock
detector