Изучаем SQL

Линн Бейли

В современном мире наивысшую ценность имеет информация, но не менее важно уметь этой информацией управлять. Эта книга посвящена языку запросов SQL и управлению базами данных. Материал излагается, начиная с описания базовых запросов и заканчивая сложными манипуляциями с помощью объединений, подзапросов и транзакций. Если вы пытаетесь разобраться в организации и управлении базами данных – эта книга будет отличным практическим пособием и предоставит вам все необходимые инструменты. Особенностью данного издания является уникальный способ подачи материала, выделяющий серию «Head First» издательства O'Reilly в ряду множества скучных книг, посвященных программированию.

Издательство: Питер, 2012 г.

ISBN 978-5-459-00421-2, 978-05962526849

Количество страниц: 592.

Содержание книги «Изучаем SQL»:

  • 25 Введение
    • 26 Для кого написана эта книга?
    • 27 Мы знаем, о чем вы думаете
    • 29 Метапознание: наука о мышлении
    • 31 Заставить свой мозг повиноваться
    • 32 Примите к сведению
    • 34 Технические рецензенты
    • 35 Благодарности
  • 37 1. Данные и таблицы: Всему свое место
    • 38 Определение данных
    • 43 Рассматриваем данные по категориям
    • 44 Что такое «база данных»?
    • 46 Посмотрим на базу данных через волшебные очки
    • 48 В базах данных хранится логически связанная информация
    • 49 Таблицы под увеличительным стеклом
    • 53 Командуйте!
    • 55 Создание таблицы: команда CREATE TABLE
    • 56 Создание более сложных таблиц
    • 57 Посмотрите, как просто пишется код SQL
    • 58 Наконец-то создаем таблицу my_contacts
    • 59 Таблица готова
    • 60 Знакомство с типами данных
    • 64 Описание таблицы
    • 66 Нельзя заново создать существующую таблицу или базу данных!
    • 68 Долой старые таблицы!
    • 70 Для добавления данных в таблицу используется команда INSERT
    • 73 Создание команды INSERT
    • 77 Модификации команды INSERT
    • 78 Столбцы без значений
    • 79 Команда SELECT читает данные из таблицы
    • 81 Управление NULL в таблицах
    • 83 NOT NULL в выходных данных DESC
    • 84 DEFAULT и значения по умолчанию
    • 85 Новые инструменты
  • 87 2. Команда SELECT: Выборка данных
    • 88 Трудный поиск
    • 91 Улучшенная команда SELECT
    • 92 Что это за * ?
    • 98 Как запрашивать разные типы данных
    • 99 Проблемы со знаками препинания
    • 100 Непарный апостроф
    • 101 Апострофы как специальные символы
    • 102 Команда INSERT с внутренним апострофом
    • 105 Выборка ограниченного набора столбцов
    • 107 Отбор столбцов ускоряет получение результатов
    • 114 Объединение условий
    • 117 Поиск числовых значений
    • 120 Операторы сравнения
    • 122 Операторы сравнения при поиске числовых данных
    • 125 Операторы сравнения при поиске текстовых данных
    • 127 Быть ИЛЬ не быть
    • 130 Чем AND отличается от OR
    • 133 Использование IS NULL для поиска NULL
    • 135 LIKE: слово для экономии времени
    • 135 Специальные символы
    • 139 Проверка диапазонов с использованием AND и операторов сравнения
    • 140 Только МЕЖДУ нами... Есть и другой способ
    • 143 Условие IN
    • 144 Ключевые слова NOT IN
    • 145 Другие применения NOT
    • 150 Новые инструменты
  • 153 3. DELETE и UPDATE: О пользе изменений
    • 154 Клоуны вокруг нас
    • 155 Информация о клоунах
    • 156 Перемещения клоунов
    • 160 Как вводятся сведения о клоунах
    • 162 Бонзо, у нас проблема
    • 163 Уничтожение записей командой DELETE
    • 165 Использование команды DELETE
    • 166 Правила DELETЕ
    • 169 Танцы INSERT-DELETE
    • 174 Будьте внимательны при выполнении DELETE
    • 178 Проблемы с неточными условиями DELETE
    • 180 Изменение данных командой UPDATE
    • 181 Правила UPDATE
    • 182 UPDATE как замена INSERT-DELETE
    • 183 UPDATE в действии
    • 188 Обновление цен
    • 190 Достаточно одной команды UPDATE
    • 192 Новые инструменты
  • 193 4. Проектирование таблиц: Как важно быть нормальным
    • 194 Две таблицы
    • 198 Логические связи как суть таблицы
    • 202 Атомарные данные
    • 204 Атомарные данные и таблицы
    • 208 О пользе нормализации
    • 209 Преимущества нормализованных таблиц
    • 210 Ненормализованные клоуны
    • 211 На полпути к 1НФ
    • 212 Правила первичных ключей
    • 215 Как прийти в НОРМУ
    • 216 Исправление таблицы Грега
    • 217 Старая команда CREATE TABLE
    • 218 Сначала покажи деньги таблицу
    • 219 Команда для экономии времени
    • 220 Команда CREATE TABLE с назначением первичного ключа
    • 222 1, 2, 3 и так далее
    • 226 Добавление первичного ключа в существующую таблицу
    • 227 ALTER TABLE и добавление первичного ключа
    • 228 Новые инструменты
  • 231 5. ALTER: Как изменить прошлое
    • 232 Нужно внести пару изменений
    • 237 Изменение таблиц
    • 238 Капитальный ремонт таблицы
    • 239 Переименование таблицы
    • 241 Грандиозные планы
    • 242 Перепланировка столбцов
    • 243 Структурные изменения
    • 244 ALTER и CHANGE
    • 245 Изменение двух столбцов одной командой SQL
    • 249 Стоп! Никаких лишних столбцов!
    • 256 Неатомарный столбец location
    • 257 В поисках закономерности
    • 258 Удобные строковые функции
    • 263 Заполнение нового столбца существующими данными
    • 264 Как работает комбинация UPDATE с SET
    • 266 Новые инструменты
  • 267 6. Расширенные возможности SELECT: Взглянуть на данные под другим углом
    • 268 Перестройка в видеотеке
    • 269 Недостатки существующей таблицы
    • 270 Классификация существующих данных
    • 271 Заполнение нового столбца
    • 274 UPDATE с выражением CASE
    • 276 Похоже, у нас проблемы
    • 281 Трудности с таблицами
    • 282 Упорядочение результатов выборки
    • 285 ORDER BY
    • 286 Упорядочение по одному столбцу
    • 289 ORDER с двумя столбцами
    • 290 ORDER с несколькими столбцами
    • 291 Упорядоченная таблица
    • 293 DESC и изменение порядка данных
    • 295 Проблемы с печеньем
    • 297 SUM сложит числа за нас
    • 298 Суммирование с использованием GROUP BY
    • 299 Функция AVG с GROUP BY
    • 300 MIN и MAX
    • 301 COUNT и подсчет дней
    • 303 Команда SELECT DISTINCT
    • 306 LIMIT и ограничение результатов
    • 307 LIMIT и второе место
    • 310 Новые инструменты
  • 311 7. Многотабличные базы данных: Когда в одной таблице тесно
    • 312 Как найти Найджелу подружку
    • 324 Одной таблицы недостаточно
    • 325 Многотабличная база данных с информацией о клоунах
    • 326 Схема базы данных clown_tracking
    • 328 Как из одной таблицы сделать две
    • 333 Связывание таблиц
    • 334 Что нужно знать о внешних ключах
    • 339 Связи между таблицами
    • 339 Типы связей: один-к-одному. Когда используются таблицы со связями
    • 340 типа «один-к-одному»
    • 341 Типы связей: «один-ко-многим»
    • 342 Типы связей: «многие-ко-многим»
    • 345 Нам нужна соединительная таблица
    • 346 Типы связей: «многие-ко-многим»
    • 349 Исправляем таблицу Грега
    • 351 Наконец-то — 1НФ
    • 352 Составные ключи состоят из нескольких столбцов
    • 354 Сокращенная запись
    • 355 Супергеройские зависимости
    • 355 Частичные функциональные зависимости
    • 356 Транзитивные функциональные зависимости
    • 360 Вторая нормальная форма
    • 361 Возможно, таблица уже находится в 2НФ
    • 366 Третья нормальная форма (наконец-то!)
    • 367 Что делать с таблицей my_contacts?
    • 370 Новые инструменты
  • 373 8. Соединения и многотабличные операции: Не могли бы мы остаться в одиночестве?
    • 374 И все равно повторения, повторения
    • 375 Заполнение таблиц
    • 377 Проблемы с нормализацией
    • 378 Особые увлечения (столбец)
    • 379 Разделение увлечений
    • 380 Обновление столбцов
    • 381 Вывод списка
    • 382 Дороги, которые мы выбираем
    • 382 (Почти) одновременное выполнение CREATE, SELECT и INSERT
    • 383 Одновременное выполнение CREATE, SELECT и INSERT
    • 384 Зачем нужно AS?
    • 385 Псевдонимы столбцов
    • 386 Кому нужны псевдонимы таблиц?
    • 387 Все, что вы хотели знать о внутренних соединениях
    • 388 Перекрестное соединение
    • 393 Открой свое внутреннее соединение
    • 394 Внутреннее соединение в действии: эквисоединение
    • 397 Внутреннее соединение в действии: неэквивалентное соединение
    • 398 Последнее внутреннее соединение: естественное соединение
    • 405 Встроенные запросы?
    • 407 Новые инструменты
  • 409 9. Подзапросы: Запросы внутри запросов
    • 410 Грег берется за поиски работы
    • 411 В списке Грега появляются новые таблицы
    • 412 Грег использует внутреннее соединение
    • 414 Но он хочет опробовать другие запросы
    • 416 Подзапросы
    • 417 Два запроса преобразуются в запрос с подзапросом
    • 418 Подзапросы: если одного запроса недостаточно
    • 419 Подзапрос в действии
    • 421 Правила для подзапросов
    • 424 Построение подзапроса
    • 427 Подзапрос как столбец SELECT
    • 428 Другой пример: подзапрос с естественным соединением
    • 429 Некоррелированный подзапрос
    • 433 Некоррелированный подзапрос с несколькими значениями: IN, NOT IN
    • 438 Коррелированные подзапросы
    • 439 Коррелированный подзапрос с NOT EXISTS
    • 440 EXISTS и NOT EXISTS
    • 442 Служба поиска работы Грега принимает заказы
    • 443 По дороге на вечеринку
    • 444 Новые инструменты
  • 445 10. Внешние соединения, самосоединения и союзы: Новые приемы
    • 446 Уничтожение старых данных
    • 447 Левое, правое
    • 448 Пример левого внешнего соединения
    • 453 Внешние соединения и множественные совпадения
    • 454 Правое внешнее соединение
    • 457 Пока мы занимались внешними соединениями
    • 458 Создание новой таблицы
    • 459 Место новой таблицы в схеме
    • 460 Рефлексивный внешний ключ
    • 461 Соединение таблицы с ней самой
    • 463 Потребуется самосоединение
    • 464 Другой способ получения многотабличной информации
    • 465 Союзы
    • 466 Ограничения союзов
    • 467 Правила союзов в действии
    • 468 UNION ALL
    • 469 Создание таблицы на основе союза
    • 470 INTERSECT и EXCEPT
    • 471 С союзами разобрались, пора переходить к
    • 471 Сравнение подзапросов и соединений
    • 472 Преобразование подзапроса в соединение
    • 477 Самосоединение как подзапрос
    • 478 Компания Грега растет
    • 480 Новые инструменты
  • 481 11. Ограничения, представления и транзакции: У семи нянек
    • 482 Грег нанимает помощников
    • 483 Первый день: вставка данных нового клиента
    • 484 Джим не хочет использовать NULL
    • 485 Три месяца спустя
    • 486 Добавление ограничения CHECK
    • 487 Ограничение CHECK для столбца gender
    • 489 Однообразная работа Фрэнка
    • 491 Создание представления
    • 492 Просмотр представлений
    • 493 Как работает представление
    • 494 Что такое представление
    • 497 Вставка, обновление и удаление в представлениях
    • 498 Обновление данных через представление
    • 501 Представление с CHECK OPTION
    • 502 Представление может быть обновляемым, если
    • 503 Удаление представлений
    • 504 Когда хорошая база данных плохо ведет себя
    • 505 Что произошло с банкоматом
    • 506 Новые неприятности с банкоматами
    • 508 Это не мечты, а транзакции
    • 509 Свойства транзакций
    • 510 SQL помогает работать с транзакциями
    • 511 Как должен был работать банкомат
    • 512 Как работать с транзакциями в MySQL
    • 513 Теперь попробуйте сами
    • 516 Новые инструменты
  • 519 12. Безопасность: Защита данных
    • 520 Проблемы с пользователями
    • 521 Предотвращение ошибок в базе данных
    • 523 Защита учетной записи root
    • 524 Создание нового пользователя
    • 525 Решите, что необходимо каждому пользователю
    • 526 Простая команда GRANT
    • 529 Разновидности GRANT
    • 530 Команда REVOKE
    • 531 Отзыв использованной привилегии GRANT OPTION
    • 536 Проблема общих учетных записей
    • 538 Использование роли
    • 538 Удаление ролей
    • 540 Конструкция WITH ADMIN OPTION
    • 545 Объединение CREATE USER с GRANT
    • 546 Оглушительный успех!
    • 547 Новые инструменты
    • 548 Присоединяйтесь!
    • 548 Используйте SQL в своих проектах... и возможно, вас тоже ожидает успех!
  • 549 Приложение I: Прочее. Десять важнейших тем (о которых мы не рассказали)
    • 550 1. Используйте графический интерфейс к своей РСУБД
    • 552 2. Зарезервированные слова и специальные символы
    • 554 3. ALL, ANY и SOME
    • 556 4. Подробнее о типах данных
    • 558 5. Временные таблицы
    • 559 6. Преобразование типа
    • 560 7. Имя пользователя и текущее время
    • 561 8. Полезные числовые функции
    • 562 8. Полезные числовые функции (продолжение)
    • 563 9. Индексирование для ускорения операций
    • 564 10. PHP/MySQL за две минуты
  • 567 Приложение II: Установка MySQL. Пробуйте сами
    • 568 За дело!
    • 568 Инструкции и устранение проблем
    • 569 Установка MySQL в системе Windows
    • 572 Установка MySQL в Mac OS X
  • 575 Приложение III: Список инструментов. Полный инструментарий SQL

Инструкция как скачать книгу Линн Бейли: Изучаем SQL в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.
Изучаем SQL
Рейтинг книги:
1 голос
1039

Поиск книг:




При поиске учитываются только слова, длина которых больше 3-х символов.

Статистика: