double arrow

Пример 2.9

SELECT Студент.*. Оценка.*, Дисциплина.[Наименование дисциплины]

FROM (Студент INNER JOIN (Оценка INNER JOIN

(Дисциплина ON Оценка.[Код дисциплины]=

Дисциплина.| Код дисциплины])

ON Студент.|№ зач. книжки]= Оценка.[№зач. книжки])

Сначала происходит соединение таблиц ОЦЕНКА и ДИСЦИПЛИНА по ключу связи [Код дисциплины]. Соединение симметричное, то есть если коды дисциплины не совпадают, записи этих таблиц не соединяются. Затем происходит соединение таблиц СТУДЕНТ и ОЦЕНКА по ключусвязи [№ зач.книжки].

Таким образом, на выходе запроса получается результат соеди­нения трех таблиц, но при условии совпадения ключей связи.

6. Удаление записей в таблице. Висходной таблице можно уда­лять отдельные или все записи, охраняя при этом структуру и ин­дексы таблицы. При удалении записей в индексированной таблице автоматически корректируются ее индексы:

DELETE [таблица.*] FROM выражение WHERE условия отбора

Полная чистка таблицы от записей и очистка индексов выпол­няются операцией:

DELETE * FROM таблица Пример 2.10.

DELETE * FROM Студент

Все записи таблицы будут удалены.

DELETE * FROM Студент WHERE [Дата рождения]>#1.1.81 #

Удаляются только те записи, в которых поле [Дата рождения) больше указанной даты.

Данная операция удаляет записи в таблице, связанные с другой таблицей: условия удаления записей могут относиться к полям свя­занных таблиц:

DELETE таблица.* FROM таблица INNERJOIN другая таблица ON таблица.[поле N] = [другая таблица].(поле М] WHERE условие Пример 2.11.

DELETE Студент.* FROM Студент INNER JOIN [Студент заочник] ON Студент.[Группа] = [Студент заочник].[Группа]

2.8. Обработка данных в базе

Удаляются записи в таблице СТУДЕНТ, для которых имеются анные записи н тяйлипс гт\>

связанные записи в таблице СТУДЕНТ-ЗАОЧНИК

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

UPDATE таблица SET новое значение WHERE условия отбора Новое значение указывается как имя поля=новое значение Пример 2.12.

UPDATE Студент SET [Группа] = "1212"

WHERE [Фамилия] LIKE 'В*'AND [Дата рождения] < = #01/01/81*

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

UPDATE Студент INNERJOIN [Студент заочник] ON Студент. [Группа] = [Студент заочник].[Группа] SET [Группа] = [Группа]&"а"

В таблице СТУДЕНТ изменяются номера групп путем добавле­ния буквы а, если они встречаются в таблице СТУДЕНТ-ЗАОЧНИК.

Организация запросов в форме SQL

Синтаксис оператораSELECT.

Выборка с помощью оператора SELECT — наиболее частая ко­манда при работе с реляционной базой данных. Этот оператор обла­дает большими возможностями по заданию структуры выходной ин­формации, указанию источников входной информации, способа упорядочения выходной информации, формированию новых значе­ний и т. п. (табл. 2.5).

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


Сейчас читают про: