Учебное пособие
Санкт-Петербургский Государственный институт
точной механики и оптики (технический университет)
Кафедра вычислительной техники
В.В.Кириллов, Г.Ю.Громов
Предисловие
Глава 1. Реляционные базы данных и язык SQL
1.1. Реляционная база данных
1.2. Почему SQL?
1.3. Таблицы SQL
Глава 2. Запросы с использованием единственной таблицы
2.1. О предложении SELECT
2.2. Выборка без использования фразы WHERE
2.2.1. Простая выборка
2.2.2. Исключение дубликатов
2.2.3. Выборка вычисляемых значений
2.3. Выборка c использованием фразы WHERE
2.3.1. Использование операторов сравнения
2.3.2. Использование BETWEEN
2.3.3. Использование IN
2.3.4. Использование LIKE
2.3.5. Вовлечение неопределенного значения
2.4. Выборка с упорядочением
2.5. Агрегирование данных
2.5.1. SQL-функции
2.5.2. Функции без использования фразы GROUP BY
2.5.3. Фраза GROUP BY
2.5.4. Использование фразы HAVING
Глава 3. Запросы с использованием нескольких таблиц
3.1. О средствах одновременной работы с множеством таблиц
3.2. Запросы, использующие соединения
3.2.1. Декартово произведение таблиц
3.2.2. Эквисоединение таблиц
3.2.3. Естественное соединение таблиц
3.2.4. Композиция таблиц
3.2.5. Тета-соединение таблиц
3.2.6. Соединение таблиц с дополнительным условием
3.2.7. Соединение таблицы со своей копией
3.3. Вложенные подзапросы
3.3.1. Виды вложенных подзапросов
3.3.2. Простые вложенные подзапросы
3.3.3. Использование одной и той же таблицы во внешнем и вложенном подзапросе
3.3.4. Вложенный подзапрос с оператором сравнения, отличным от IN
3.3.5. Коррелированные вложенные подзапросы
3.3.6. Запросы, использующие EXISTS
3.3.7. Функции в подзапросе
3.4. Объединение (UNION)
3.5. Реализация операций реляционной алгебры предложением SELECT
3.6. Резюме
Глава 4. Предложения модификации данных SQL
4.1. Особенности и синтаксис предложений модификации
4.2. Предложение DELETE
4.2.1. Удаление единственной записи
4.2.2. Удаление множества записей
4.2.3. Удаление с вложенным подзапросом
4.3. Предложение INSERT
4.3.1. Вставка единственной записи в таблицу
4.3.2. Вставка множества записей
4.3.3. Использование INSERT...SELECT для построения внешнего соединения
4.4. Предложение UPDATE
4.4.1. Обновление единственной записи
4.4.2. Обновление множества записей
4.4.3. Обновление с подзапросом
4.4.4. Обновление нескольких таблиц
4.5. О конструировании предложений модификации
Глава 5. О предложениях определения данных и оптимизации запросов
5.1. Системный каталог
5.2. Создание и уничтожение базовых таблиц
5.3. О индексах и производительности
5.4. Представления
5.4.1. Создание и уничтожение представлений
5.4.2. Операции выборки из представлений
5.4.3. Обновление представлений
5.4.4. Для чего нужны представления
Глава 6. О других предложениях и конструкциях SQL
6.1. Безопасность и санкционирование доступа
6.2. Обработка транзакций
6.3. Прикладное программирование
Литература