SQL. Руководство для использования с любыми SQL СУБД
Покупка
Тематика:
Системы управления базами данных (СУБД)
Издательство:
ДМК Пресс
Автор:
Фиайли Крис
Перевод:
Хаванов А. В.
Год издания: 2023
Кол-во страниц: 454
Дополнительно
Вид издания:
Учебное пособие
Уровень образования:
ВО - Бакалавриат
ISBN: 978-5-89818-323-3
Артикул: 816353.01.99
Книга посвящена языку программирования SQL, применяемому для работы с реляционными базами данных. Обсуждается версия языка ANSI SQL-92 (SQL2). В настоящем издании рассказывается об использовании запросов SQL для решения соответствующих классов задач по выборке данных, их модификации или по работе с объектами структуры базы данных. Все конструкции подробно описываются и иллюстрируются большим количеством примеров. Кроме того, для каждого типа запросов рассматриваются отклонения от стандарта в реализации наиболее распространенных СУБД: MS Access, MS SQL Server, Oracle, MySQL и PostgreSQL. Книга предназначена всем, кто желает самостоятельно изучить язык SQL или усовершенствовать свои знания по этой теме.
- Полная коллекция по информатике и вычислительной технике
- ДМК Пресс. Информационные системы и технологии
- ДМК Пресс. ИТ-технологии для профессионалов
- Интермедиатор. Информационные системы и технологии (сводная)
- Интермедиатор. ИТ-технологии для профессионалов (сводная)
- Системы управления базами данных (СУБД)
Тематика:
ББК:
УДК:
ОКСО:
- ВО - Бакалавриат
- 09.03.01: Информатика и вычислительная техника
- 09.03.02: Информационные системы и технологии
- 09.03.03: Прикладная информатика
- 09.03.04: Программная инженерия
ГРНТИ:
Скопировать запись
Фрагмент текстового слоя документа размещен для индексирующих роботов
SQL QUICK START Крис Фиайли
VISUAL QUICKSTART GUIDE SQL Chris Fehily
QUICK START SQL Крис Фиайли Издание рекомендовано в качестве учебного пособия для студентов технических вузов Москва, 2023 2-е издание, электронное
УДК 004.43 ББК 32.973.26-018.1 Ф48 Ф48 Фиайли, Крис. SQL. Руководство для использования с любыми SQL СУБД / К. Фиайли ; пер. с англ. А. В. Хаванова. — 2-е изд., эл. — 1 файл pdf : 454 с. — Москва : ДМК Пресс, 2023. — (Quick Start). — Систем. требования: Adobe Reader XI либо Adobe Digital Editions 4.5 ; экран 10". — Текст : электронный. ISBN 978-5-89818-323-3 Книга посвящена языку программирования SQL, применяемому для работы с реляционными базами данных. Обсуждается версия языка ANSI SQL-92 (SQL2). В настоящем издании рассказывается об использовании запросов SQL для решения соответствующих классов задач по выборке данных, их модификации или по работе с объектами структуры базы данных. Все конструкции подробно описываются и иллюстрируются большим количеством примеров. Кроме того, для каждого типа запросов рассматриваются отклонения от стандарта в реализации наиболее распространенных СУБД: MS Access, MS SQL Server, Oracle, MySQL и PostgreSQL. Книга предназначена всем, кто желает самостоятельно изучить язык SQL или усовершенствовать свои знания по этой теме. УДК 004.43 ББК 32.973.26-018.1 Электронное издание на основе печатного издания: SQL. Руководство для использования с любыми SQL СУБД / К. Фиайли ; пер. с англ. А. В. Хаванова. — Москва : ДМК Пресс, 2012. — 451 с. — (Quick Start). — ISBN 5-94074-233-5. — Текст : непосредственный. В соответствии со ст. 1299 и 1301 ГК РФ при устранении ограничений, установленных техническими средствами защиты авторских прав, правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации. ISBN 978-5-89818-323-3 © Перевод на русский язык, оформление ДМК Пресс
Содержание Введение ..................................................................................................................... 11 Глава 1. Основные характеристики СУБД.................................................. 24 Выполнение программ SQL..................................................................... 25 Microsoft Access........................................................................................ 27 Microsoft SQL Server ................................................................................ 30 Oracle.......................................................................................................... 33 MySQL ........................................................................................................ 36 PostgreSQL ................................................................................................. 38 Глава 2. Реляционная модель......................................................................... 41 Таблицы, столбцы и строки ................................................................... 43 Первичные ключи .................................................................................... 47 Внешние ключи ........................................................................................ 51 Связи .......................................................................................................... 54 Нормализация........................................................................................... 57 Наша типовая база данных ..................................................................... 63 Глава 3. Основы SQL ........................................................................................... 69 Синтаксис SQL .......................................................................................... 69 Типы данных ............................................................................................. 75 Строковые типы данных ......................................................................... 77 Битовые типы данных .............................................................................. 79 Точные числовые типы данных ............................................................. 80 Действительные числовые типы данных .............................................. 82 Календарные типы данных ..................................................................... 84 Интервальные типы данных ................................................................... 88 Значение null ............................................................................................. 90
SQL Глава 4. Выбор данных из произвольной таблицы............................... 92 Выбор столбцов с помощью предложений SELECT и FROM ............ 93 Создание псевдонимов столбцов с помощью предложения AS ........ 96 Удаление повторяющихся строк с помощью ключевого слова DISTINCT ............................................... 99 Сортировка строк с помощью предложения ORDER BY..................101 Фильтрация строк с помощью предложения WHERE .......................109 Комбинирование условий с помощью операторов AND, OR и NOT ...114 Сравнение по шаблону оператором LIKE............................................122 Сравнение с диапазоном с помощью оператора BETWEEN .............128 Фильтрация с помощью оператора IN .................................................131 Проверка на значение null с помощью оператора IS NULL...............134 Глава 5. Операторы и функции ......................................................................137 Создание производных столбцов .........................................................138 Арифметические операции ...................................................................140 Определение последовательности вычисления ..................................143 Объединение строк с помощью оператора || ......................................145 Выбор произвольной подстроки с помощью функции SUBSTRING() .....................................................149 Переключение регистра символов строки с использованием функций UPPER() и LOWER() ..............................153 Удаление пробелов с помощью функции TRIM() .............................155 Определение длины произвольной строки с помощью функции CHARACTER_LENGTH() ................................159 Поиск подстроки с использованием функции POSITION() .............161 Операции с данными даты и времени ..................................................165 Извлечение значений текущих даты и времени..................................169 Отображение информации о пользователе.........................................171 Преобразование типов данных с помощью функции CAST() ..........173 Вычисление условных значений с помощью выражения CASE........179 Проверка на значения null с использованием функции COALESCE()............................................184 Сравнение выражений с помощью функции NULLIF() ....................185 Глава 6. Суммирование и группировка данных .....................................188 Использование агрегатных функций ...................................................189 Поиск минимума посредством функции MIN() ................................192 Поиск максимума с использованием функции MAX() .....................194 Вычисление суммы с помощью функции SUM() ..............................196 Порядок расчета среднего значения с помощью функции AVG() ....198 Подсчет строк с помощью функции COUNT() .................................200
Содержание Исключение повторных значений с помощью предложения DISTINCT ....................................................202 Группирование строк с использованием предложения GROUP BY .....206 Фильтрация групп с помощью предложения HAVING......................215 Глава 7. Выбор данных из нескольких таблиц .......................................219 Уточнение имен столбцов .....................................................................220 Создание псевдонимов таблиц с помощью предложения AS ...........222 Использование объединений .................................................................224 Создание объединений с помощью синтаксиса JOIN и WHERE ......228 Создание произвольного перекрестного объединения с использованием предложения CROSS JOIN......................................233 Создание произвольного естественного объединения с использованием предложения NATURAL JOIN ...............................236 Создание внутреннего объединения с помощью команды INNER JOIN ........................................................241 Создание внешних объединений с помощью команды OUTER JOIN.......................................................265 Создание самообъединения ...................................................................279 Комбинирование строк с помощью оператора UNION ....................286 Поиск общих строк с помощью команды INTERSECT .....................295 Поиск разных строк с помощью команды EXCEPT...........................297 Глава 8. Подзапросы ..........................................................................................299 Принципы работы с подзапросами ......................................................300 Структура подзапросов..........................................................................302 Подзапросы и объединения ...................................................................303 Простые и сложные запросы .................................................................307 Определение названий столбцов в подзапросах.................................313 Значения null в подзапросах...................................................................314 Использование подзапросов в качестве выражений в списке заголовков столбцов ...............................................................316 Сравнение значений, возвращаемых подзапросом, с использованием операторов сравнения.............................................320 Проверка на вхождение во множество с помощью оператора IN ...325 Сравнение всех значений запроса с помощью ключевого слова ALL .........................................................333 Сравнение некоторых значений запроса с помощью ключевого слова ANY........................................................337 Проверка наличия выборки с помощью оператора EXISTS..............341 Сравнение эквивалентных запросов .....................................................347
SQL Глава 9. Добавление, обновление и удаление строк...........................348 Отображение названий столбцов в таблице ........................................349 Вставка строк с помощью команды INSERT ......................................352 Изменение строк с помощью команды UPDATE ...............................358 Удаление строк с помощью команды DELETE ...................................363 Глава 10. Создание, изменение и удаление таблиц ..............................367 Порядок создания таблиц ......................................................................368 Основные принципы работы с ограничениями ..................................369 Создание новой таблицы с помощью команды CREATE TABLE .....371 Запрет значения null с помощью ограничения NOT NULL ...............373 Присвоение значения по умолчанию с помощью ограничения DEFAULT ......................................................376 Задание первичного ключа с помощью ограничения PRIMARY KEY ............................................379 Задание внешнего ключа с помощью ограничения FOREIGN KEY .....383 Присвоение уникальных значений с помощью ограничения UNIQUE ........................................................389 Проверка значений столбца с помощью ограничения CHECK ........392 Создание временной таблицы с помощью команды CREATE TEMPORARY TABLE .........................395 Создание новой таблицы на основе существующей с помощью команды SELECT INTO .....................................................398 Изменение таблицы с помощью команды ALTER TABLE .................401 Удаление таблицы с помощью команды DROP TABLE ....................404 Глава 11. Индексы .................................................................................................405 Создание индекса с помощью команды CREATE INDEX .................405 Удаление индекса с помощью команды DROP INDEX .....................409 Глава 12. Представления ....................................................................................411 Создание представления с помощью команды CREATE VIEW ........411 Считывание данных из представления .................................................417 Изменение данных через представление .............................................419 Удаление представления с помощью команды DROP VIEW............424 Глава 13. Транзакции ...........................................................................................425 Выполнение транзакций .........................................................................426 Приложение ....................................................................................................................431 Предметный указатель .............................................................................................445
Посвящается моему отцу
Благодарности Беки Морган (Becky Morgan) – за критику первого варианта рукописи. Марджори Баер (Marjorie Baer) – за то, что посоветовала прочитать книгу «Do you know SQL?». Кэти Симпсон (Kathy Simpson) – за то, что иногда ради работы жертвовала сном. Лизу Бразиил (Lisa Brazieal) – за постоянное «вырезать и вклеить». Морин Форис (Maureen Forys) – за отсутствие переносов в ключевых словах. Брайена Штайнвега (Bryan Steinweg) – за переносы на следующую страницу. Даррена Пеннингтона (Darren Pennington) – за то, что садился на своего любимого «конька». Нэнси Олдридж-Рюнцель (Nancy Aldrich-Ruenzel) – за свежие идеи. Информация в примере с базой данных – вымышленная. Я позаимствовал пару названий из новелл Яна М. Бэнкса (Iain M. Bank's).