Внимание!!!! Книга удалена по требованию
правообладателя!!!!
Предисловие....13
Почему именно SQL....13
Цели книги....14
Обновления в четвертом издании....14
Структура издания....15
I. Основные понятия....15
II. Объекты базы данных, типы данных и функции....16
III. Расширенные концепции....16
Условные обозначения....16
Использование примеров кода....17
Благодарности....19
От издательства....20
Глава 1....21
Ускоренный курс SQL....21
Что такое база данных....21
SQL....21
NoSQL....22
Системы управления базами данных (СУБД)....23
SQL-запрос....26
SQL-операторы....26
SQL-запросы....27
Оператор SELECT....27
Порядок выполнения....29
Модель данных....30
Глава 2....33
Где можно писать SQL-код....33
Программное обеспечение РСУБД....34
Какую РСУБД выбрать....34
Что такое окно терминала....35
SQLite....35
MySQL....37
Oracle....37
PostgreSQL....38
SQL Server....39
Инструменты для работы с базами данных....40
Подключение инструмента к базе данных....42
Другие языки программирования....44
Подключение Python к базе данных....45
Подключение R к базе данных....50
Глава 3....55
Язык SQL....55
Сравнение с другими языками....55
Стандарты ANSI....57
Термины SQL....59
Ключевые слова и функции....60
Идентификаторы и псевдонимы....61
Операторы и предложения....63
Выражения и предикаты....65
Комментарии, кавычки и пробелы....66
Подъязыки....68
Глава 4....70
Основы работы с запросами....70
Предложение SELECT....71
Выбор столбцов....72
Выбор всех столбцов....72
Выбор выражений....73
Выбор функций....73
Псевдонимы столбцов....74
Уточнение столбцов....76
Выбор подзапросов....78
Ключевое слово DISTINCT....80
Предложение FROM....82
Получение данных из нескольких таблиц....83
Получение данных из подзапросов....85
Зачем использовать подзапрос в предложении FROM....88
Предложение WHERE....90
Множественные предикаты....91
Фильтрация по подзапросам....91
Предложение GROUP BY....94
Предложение HAVING....98
Предложение ORDER BY....100
Предложение LIMIT....103
Глава 5....105
Создание, обновление и удаление....105
Базы данных....105
Модель данных в сравнении со схемой....107
Отображение имен существующих баз данных....107
Отображение имени текущей базы данных....108
Переключение на другую базу данных....109
Создание базы данных....109
Удаление базы данных....110
Создание таблиц....111
Создание простой таблицы....112
Отображение имен существующих таблиц....113
Создание новой таблицы....114
Создание таблицы с ограничениями....115
Создание таблицы с первичными и внешними ключами....118
Создание таблицы с автоматически генерируемым полем....122
Вставка результатов запроса в таблицу....123
Вставка данных из текстового файла в таблицу....125
Изменение таблиц....128
Переименование таблицы или столбца....128
Отображение, добавление и удаление столбцов....129
Отображение, добавление и удаление строк....132
Отображение, добавление, изменение и удаление ограничений....133
Обновление столбца данных....137
Обновление строк данных....138
Обновление строк данных с помощью результатов запроса....139
Удаление таблицы....140
Индексы....141
Сравнение книжного указателя и индекса SQL....142
Создание индекса для ускорения запросов....143
Представления....145
Создание представления для сохранения результатов запроса....147
Управление транзакциями....149
Двойная проверка изменений перед использованием оператора COMMIT....151
Отмена изменений с помощью оператора ROLLBACK....153
Глава 6....155
Типы данных....155
Как выбрать тип данных....157
Числовые данные....158
Числовые значения....159
Целочисленные типы данных....160
Десятичные типы данных....162
Типы данных с плавающей запятой....163
Строковые данные....166
Строковые значения....166
Символьные типы данных....168
Типы данных Unicode....171
Данные даты и времени....172
Значения даты и времени....173
Типы данных DATETIME....176
Другие данные....183
Булевы данные....184
Внешние файлы (изображения, документы и т. д.)....185
Глава 7....190
Операции и функции....190
Операции....191
Логические операции....192
Операции сравнения....193
Математические операции....200
Агрегатные функции....201
Числовые функции....203
Применение математических функций....204
Генерация случайных чисел....205
Округление и усечение чисел....207
Преобразование данных в числовой тип ....208
Строковые функции....209
Нахождение длины строки....209
Изменение регистра строки....210
Удаление нежелательных символов вокруг строки....210
Конкатенация строк....213
Поиск текста в строке....213
Извлечение части строки....215
Замена текста в строке....217
Удаление текста из строки....217
Использование регулярных выражений....218
Преобразование данных в строковый тип данных....225
Функции даты и времени....227
Возврат текущей даты или времени....227
Добавление или вычитание интервала даты или времени....228
Извлечение части даты или времени....234
Определение дня недели для заданной даты....236
Округление даты до ближайшей единицы времени....237
Преобразование строки в тип данных DATETIME....238
Функции NULL....243
Возврат альтернативного значения при наличии значения NULL....243
Глава 8....244
Расширенные концепции запросов....244
Операторы CASE....245
Отображение значений на основе логики IF-THEN для одного столбца....246
Отображение значений на основе логики IF-THEN для нескольких столбцов....247
Группировка и агрегирование....248
Основы работы с GROUP BY....249
Агрегирование строк в одно значение или список....252
ROLLUP, CUBE и GROUPING SETS....254
Оконные функции....256
Агрегатная функция....257
Оконная функция....257
Ранжирование строк в таблице....259
Возврат первого значения в каждой группе....261
Возврат второго значения в каждой группе....262
Возврат первых двух значений в каждой группе....263
Возврат значения предыдущей строки....264
Расчет скользящего среднего....266
Вычисление промежуточного итога....267
Операции PIVOT и UNPIVOT....268
Разбиение значений столбца на несколько столбцов....269
Перечисление значений нескольких столбцов в одном....270
Глава 9....273
Работа с несколькими таблицами и запросами....273
Соединение таблиц....274
Основы соединения и INNER JOIN....278
LEFT JOIN, RIGHT JOIN и FULL OUTER JOIN....281
USING and NATURAL JOIN....282
CROSS JOIN и Self Join....285
Операции объединения....287
UNION....289
EXCEPT и INTERSECT....292
Обобщенные табличные выражения....294
CTE в сравнении с подзапросами....295
Рекурсивные CTE....298
Глава 10....304
Как мне...?....304
Поиск строк, содержащих повторяющиеся значения....304
Возврат всех уникальных комбинаций....305
Возврат только строк с повторяющимися значениями....306
Выбор строк с максимальным значением для другого столбца....307
Конкатенация текста из нескольких полей в одно....309
Конкатенация текста из полей в одной строке....309
Конкатенация текста из полей в нескольких строках....310
Поиск всех таблиц, содержащих определенное имя столбца....311
Обновление таблицы, в которой идентификатор совпадает с идентификатором в другой таблице....313
Об авторе....316
Иллюстрация на обложке....317
Если вы аналитик или инженер по обработке данных и используете SQL, популярный карманный справочник станет для вас идеальным помощником. Найдите множество примеров, раскрывающих все сложности языка, а также ключевые аспекты SQL при его использовании в Microsoft SQL Server, MySQL, Oracle Database, PostgreSQL и SQLite.В обновленном издании Элис Чжао описывает, как в этих СУБД используется SQL для формирования запросов и внесения изменений в базу. Получите подробную информацию о типах данных и их преобразованиях, синтаксисе регулярных выражений, оконных функциях, операторах PIVOT и UNPIVOT и многом другом.