Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс БД.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.39 Mб
Скачать

Создание вложенных (подчиненных) запросов

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

Синтаксис:

SELECT список_полей

FROM список таблиц

WHERE [имя_таблицы.]имя_поля

IN SELECT инструкция_выбора

GROUP BY критерий группировки

[HAVING групповой_критерий]

[ORDER BY критерий_столбца ]

Например: вывести данные о клиентах, разместивших заказы в определенном интервале дат.

SELECT DISTINCTROW Клиенты.ОбращатьсяК,Клиенты.Название,

Клиенты.Должность, Клиенты.Телефон

FROM Клиенты

WHERE Клиенты.КодКлиента

IN (SELECT DISTINCTROW Заказы.КодКлиента FROM Заказы

WHERE Заказы.Дата BETWEEN #4/5/02# AND #4/9/02#;

Создание запросов на изменение данных

Команды INSERT, DELETE, UPDATE языка SQL позволяют производить действия над данными.

Добавление записей

При помощи команды INSERT можно создавать запросы на добавление записей.

Синтаксис:

INSERT INTO таблица_приемник

SELECT [ALL|DISTINCT||DISTINCTROW] список_выбора

FROM таблица_источник

[WHERE критерий_добавления]

Например: добавить в таблицу КлиентыМосква записи из таблицы Клиенты, в которых значение поля Город=”Москва”

INSERT INTO КлиентыМосква

SELECT *

FROM Клиенты

WHERE Клиенты.Город=”Москва”;

Удаление записей

При помощи команды DELETE можно создавать запросы на удаление записей.

Синтаксис:

DELETE FROM имя_таблицы

[WHERE критерий_удаления]

Например: удалить из таблицы Клиенты, записи в которых значение поля Город=”Москва”

DELETE FROM Клиенты

WHERE Клиенты.Город=”Москва”;

Чтобы удалить все записи из таблицы не нужно указывать WHERE.

Обновление записей

При помощи команды UPDATE можно создавать запросы на обновление записей.

Синтаксис:

UPDATE имя_таблицы

SET имя_поля=значение [,имя_поля=значение]

[WHERE критерий_обновления]

Например: изменить название города “Ленинград” на “Санкт-Петербург”

UPDATE Клиенты

SET Клиенты.Город=“Санкт-Петербург”

WHERE Клиенты.Город=“Ленинград”;

Создание новой таблицы

Запрос на создание новой таблицы можно создать при помощи команды SELECT.

Синтаксис:

SELECT [ALL| DISTINCT|DISTINCTROW] список_выбора

INTO новая_таблица

FROM исходная таблица

WHERE критерий_отбора

Например: сохранить в новой таблице данные обо всех клиентах из Санкт-Петербурга.

SELECT *

INTO КлиентыСанктПетербурга

FROM Клиенты

WHERE Клиенты.Город=“Санкт-Петербург”;

Вопросы и задания

  1. Что такое язык SQL и для чего он предназначен?

  2. При помощи какой инструкции SQL можно производить выборку данных?

  3. Для чего используется предложение FROM?

  4. Для чего используется предложение ORDER BY?

  5. Для чего используется предложение WHERE?

  6. Что такое статистические функции SQL?

  7. При помощи какой инструкции SQL можно производить обновление данных?

  8. Как можно создать новую таблицу на языке SQL?

  9. Как можно выполнить группирование данных в запросе?

  10. Как можно упорядочить данные запроса?

  11. Напишите инструкцию SQL для выборки всех книг жанра «детектив”.

  12. Напишите инструкцию SQL для подсчета количества книг в библиотеке.

  13. Напишите инструкцию SQL для добавления записи в таблицу Читатели”

  14. Напишите инструкцию SQL для выборки всех читателей, фамилия которых начинается на букву «Д».