Отчет по лабораторной работе №4
Цель работы – научиться строить запросы в режиме SQL.
Будем работать с таблицами Book и Book_in_Lib, которые имеют следующий вид:
1. Первым делом создаем в конструкторе запрос на вывод столбца Автор из таблицы Book. В режиме SQL запрос выглядит так:
SELECT Book.Автор FROM Book;
Результат выполнения запроса:
Видно, что даже если значение колонки Автор повторяется, оно все равно выводится. Для того чтобы повторяющиеся строки отбрасывались, напишем запрос:
SELECT DISTINCT Book.Автор FROM Book;
В результате отсортированный список авторов без повторов:
Запрос на сортировку по авторам в обратном порядке имеет вид:
SELECT DISTINCT Book.Автор FROM Book ORDER BY Book.Автор DESC;
2. Поэкспериментируем с объединением таблиц:
SELECT Book_in_Lib.LibID, Book.Автор, Book.Название
FROM Book INNER JOIN Book_in_Lib ON Book.BookID=Book_in_Lib.BookID;
Инструкция INNER JOIN указывает на то, что надо соединить таблицы по условию совпадения значений в столбцах Book.BookID = Book_in_Lib.BookID. Причем соединение должно быть «внутренним» - соответствующие значения должны встречаться как в одной, так и в другой таблице.
В результате получим таблицу:
SELECT Book_in_Lib.LibID, Book.Автор, Book.Название
FROM Book LEFT JOIN Book_in_Lib ON Book.BookID=Book_in_Lib.BookID;
Инструкция LEFT JOIN будет указывать на то, что все записи из таблицы Book будут добавляться в общий набор записей, даже если в таблице Book_in_lib будут отсутствовать совпадающие значения в полях BookID.
Результат:
SELECT Book_in_Lib.LibID, Book.Автор, Book.Название
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.