SQL. Сборник рецептов

Free Download

Authors:

Series: O'REILLY

ISBN: 5932861258, 9785932861257

Size: 4 MB (3704362 bytes)

Pages: 668/668

File format:

Language:

Publishing Year:

Category: Tags: , ,

Энтони Молинаро5932861258, 9785932861257

Книга Энтони Молинаро “SQL. Сборник рецептов” предназначена тем, кто уже знаком с основами языка запросов SQL и хочет повысить свой профессиональный уровень. Она будет полезна и экспертам SQL, поскольку автор предлагает варианты решения задач для разных СУБД: DB2, Oracle, PostgreSQL, MySQL и SQL Server. Если вы постоянно работаете с SQL на одной платформе, то, возможно, найдете в рецептах более эффективное решение на другой. Вы научитесь использовать SQL для решения более широкого спектра задач – от операций внутри баз данных до передачи данных по сети в приложения. Для этого достаточно открыть книгу на странице с интересующим вас рецептом. Вы узнаете, как применять оконные функции и специальные операторы, а также расширенные методы работы с хранилищами данных: создание гистограмм, резюмирование данных в блоки, выполнение агрегации скользящего диапазона значений, формирование текущих сумм и подсумм. Вы сможете разворачивать строки в столбцы и наоборот, упрощать вычисления внутри строки и выполнять двойное разворачивание результирующего множества, выполнять обход строки, что позволяет использовать SQL для синтаксического разбора строки на символы, слова или элементы строки с разделителями. Приемы, предлагаемые автором, позволят оптимизировать код ваших приложений и откроют перед вами новые возможности языка SQL.

Table of contents :
Оглавление……Page 8
Почему я написал эту книгу……Page 14
Цель данной книги……Page 15
Для кого эта книга……Page 16
Как работать с этой книгой……Page 17
Чего нет в этой книге……Page 19
Структура данной книги……Page 21
Платформа и версия……Page 24
Таблицы, используемые в данной книге……Page 25
Условные обозначения……Page 26
Соглашения по написанию кода……Page 27
Использование примеров кода……Page 28
Благодарности……Page 29
Извлечение всех строк и столбцов из таблицы……Page 35
Выбор строк по нескольким условиям……Page 36
Извлечение подмножества столбцов из таблицы……Page 37
Как задать столбцам значимые имена……Page 38
Обращение к столбцу в предикате WHERE по псевдони……Page 39
Конкатенация значений столбцов……Page 40
Использование условной логики в выражении SELECT……Page 41
Ограничение числа возвращаемых строк……Page 42
Возвращение n случайных записей таблицы……Page 44
Поиск значений NULL……Page 45
Преобразование значений NULL в не-NULL значения……Page 46
Поиск по шаблону……Page 47
Возвращение результатов запроса в заданном порядк……Page 49
Сортировка по нескольким полям……Page 50
Сортировка по подстрокам……Page 51
Сортировка смешанных буквенно-цифровых данных……Page 52
Обработка значений NULL при сортировке……Page 55
Сортировка по зависящему от данных ключу……Page 62
Размещение одного набора строк под другим……Page 64
Объединение взаимосвязанных строк……Page 66
Поиск одинаковых строк в двух таблицах……Page 68
Извлечение из одной таблицы значений, которых нет……Page 70
Извлечение из таблицы строк, для которых нет соот……Page 74
Независимое добавление объединений в запрос……Page 76
Выявление одинаковых данных в двух таблицах……Page 78
Идентификация и устранение некорректного использо……Page 85
Осуществление объединений при использовании агрег……Page 87
Внешнее объединение при использовании агрегатных……Page 92
Возвращение отсутствующих данных из нескольких та……Page 95
Значения NULL в операциях и сравнениях……Page 99
Глава 4. Вставка, обновление, удаление……Page 101
Вставка значений по умолчанию……Page 102
Переопределение значения по умолчанию значением N……Page 104
Копирование описания таблицы……Page 105
Вставка в несколько таблиц одновременно……Page 106
Блокировка вставки в определенные столбцы……Page 108
Изменение записей в таблице……Page 109
Обновление в случае существования соответствующих……Page 111
Обновление значениями из другой таблицы……Page 112
Слияние записей……Page 115
Удаление всех записей из таблицы……Page 117
Удаление одной записи……Page 118
Уничтожение дублирующихся записей……Page 119
Удаление записей, на которые есть ссылки в другой……Page 121
Как получить список таблиц схемы……Page 123
Как получить список столбцов таблицы……Page 124
Как получить список индексированных столбцов табл……Page 125
Как получить список ограничений, наложенных на та……Page 127
Как получить список внешних ключей без соответств……Page 128
Использование SQL для генерирования SQL……Page 132
Описание представлений словаря данных в базе данн……Page 134
Глава 6. Работа со строками……Page 136
Проход строки……Page 137
Как вставить кавычки в строковые литералы……Page 139
Как подсчитать, сколько раз символ встречается в ……Page 140
Удаление из строки ненужных символов……Page 141
Разделение числовых и символьных данных……Page 143
Как определить, содержит ли строка только буквенн……Page 147
Извлечение инициалов из имени……Page 152
Упорядочивание по частям строки……Page 156
Упорядочивание по числу в строке……Page 157
Создание списка с разделителями из строк таблицы……Page 163
Преобразование данных с разделителями в список оп……Page 170
Упорядочение строки в алфавитном порядке……Page 176
Выявление строк, которые могут быть интерпретиров……Page 182
Извлечение n-ной подстроки с разделителями……Page 189
Синтаксический разбор IP-адреса……Page 196
Вычисление среднего……Page 199
Поиск минимального/максимального значения столбца……Page 201
Вычисление суммы значений столбца……Page 203
Подсчет строк в таблице……Page 205
Вычисление текущей суммы……Page 207
Вычисление текущего произведения……Page 211
Вычисление текущей разности……Page 214
Вычисление моды……Page 215
Вычисление медианы……Page 218
Вычисление доли от целого в процентном выражении……Page 222
Агрегация столбцов, которые могут содержать NULL-……Page 225
Вычисление среднего без учета наибольшего и наиме……Page 226
Преобразование буквенно-цифровых строк в числа……Page 228
Изменение значений в текущей сумме……Page 230
Добавление и вычитание дней, месяцев и лет……Page 233
Определение количества дней между двумя датами……Page 236
Определение количества рабочих дней между двумя д……Page 238
Определение количества месяцев или лет между двум……Page 243
Определение количества секунд, минут или часов ме……Page 246
Как подсчитать, сколько раз в году повторяется ка……Page 248
Определение интервала времени в днях между текуще……Page 260
Глава 9. Работа с датами……Page 266
Как определить, является ли год високосным……Page 267
Как определить количество дней в году……Page 274
Извлечение единиц времени из даты……Page 277
Определение первого и последнего дней месяца……Page 279
Выбор всех дат года, выпадающих на определенный д……Page 282
Определение дат первого и последнего появления за……Page 289
Создание календаря……Page 297
Получение дат начала и конца кварталов года……Page 316
Определение дат начала и окончания заданного квар……Page 322
Дополнение отсутствующих дат……Page 329
Поиск по заданным единицам времени……Page 339
Сравнение строк по определенной части даты……Page 341
Выявление наложений диапазонов дат……Page 344
Поиск диапазона последовательных значений……Page 350
Вычисление разности между значениями строк одной……Page 356
Определение начала и конца диапазона последовател……Page 365
Вставка пропущенных значений диапазона……Page 370
Формирование последовательности числовых значений……Page 375
Разбиение результирующего множества на страницы……Page 380
Как пропустить n строк таблицы……Page 383
Использование логики OR во внешних объединениях……Page 386
Выявление строк со взаимообратными значениями……Page 389
Как выбрать записи с n-ым количеством наивысших з……Page 391
Как найти записи с наибольшим и наименьшим значен……Page 393
Сбор информации из последующих строк……Page 395
Смещение значений строк……Page 398
Ранжирование результатов……Page 402
Исключение дубликатов……Page 403
Ход конем……Page 405
Формирование простых прогнозов……Page 413
Разворачивание результирующего множества в одну с……Page 422
Разворачивание результирующего множества в нескол……Page 425
Обратное разворачивание результирующего множества……Page 433
Обратное разворачивание результирующего множества……Page 435
Исключение повторяющихся значений из результирующ……Page 438
Разворачивание результирующего множества для упро……Page 442
Создание блоков данных фиксированного размера……Page 443
Создание заданного количества блоков……Page 447
Создание горизонтальных гистограмм……Page 453
Создание вертикальных гистограмм……Page 455
Как возвратить столбцы, не перечисленные в операт……Page 458
Вычисление простых подсумм……Page 464
Вычисление подсумм для всех возможных сочетаний……Page 468
Как выявить строки, в которых представлены не под……Page 478
Использование выражений CASE для маркировки строк……Page 480
Создание разреженной матрицы……Page 482
Группировка строк по интервалам времени……Page 483
Агрегация разных групп/сегментов одновременно……Page 487
Агрегация скользящего множества значений……Page 489
Разворачивание результирующего множества, содержа……Page 497
Глава 13. Иерархические запросы……Page 502
Представление отношений родитель-потомок……Page 503
Представление отношений потомок-родитель-прародит……Page 507
Создание иерархического представления таблицы……Page 512
Выбор всех дочерних строк для заданной строки……Page 521
Определение узлов: ветвления, концевого, корневог……Page 525
Создание отчетов с перекрестными ссылками с помощ……Page 534
Обратное разворачивание отчета с помощью оператор……Page 536
Транспонирование результирующего множества с помо……Page 538
Извлечение элементов строки, положение которых в……Page 543
Как определить количество дней в году (альтернати……Page 545
Поиск смешанных буквенно-цифровых строк……Page 547
Преобразование целых чисел в их двоичное представ……Page 549
Разворачивание ранжированного результирующего мно……Page 552
Как добавить заголовок столбца в дважды развернут……Page 557
Преобразование скалярного подзапроса в составной……Page 568
Синтаксический разбор сериализованных данных в ст……Page 571
Определение доли от целого в процентном выражении……Page 575
Создание списка разделенных запятыми значений в O……Page 577
Выбор текста, не соответствующего шаблону (Oracle……Page 583
Преобразование данных с помощью вложенного запрос……Page 586
Проверка существования значения в группе……Page 587
Группировка……Page 591
Сегментирование……Page 603
Таблицы Розенштейна……Page 619
Запросы с отрицанием……Page 621
Запросы с условием «не более»……Page 630
Запросы с условием «не менее»……Page 636
Запросы с условием «точно»……Page 642
Запросы с условием «любой» или «все»……Page 649
Алфавитный указатель……Page 657

Reviews

There are no reviews yet.

Be the first to review “SQL. Сборник рецептов”
Shopping Cart
Scroll to Top