Максим Чалышев - Oracle SQL. 100 шагов от новичка до профессионала

Тут можно читать онлайн Максим Чалышев - Oracle SQL. 100 шагов от новичка до профессионала - бесплатно ознакомительный отрывок. Жанр: comp-programming, год 11. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Oracle SQL. 100 шагов от новичка до профессионала
  • Автор:
  • Жанр:
  • Издательство:
    неизвестно
  • Год:
    11
  • ISBN:
    нет данных
  • Рейтинг:
    5/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Максим Чалышев - Oracle SQL. 100 шагов от новичка до профессионала краткое содержание

Oracle SQL. 100 шагов от новичка до профессионала - описание и краткое содержание, автор Максим Чалышев, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
Более 300 ответов на вопросы.
Более 500 практических заданий.
Более 1000 разобранных примеров.
Учебник справочник по языку SQL.

Oracle SQL. 100 шагов от новичка до профессионала - читать онлайн бесплатно ознакомительный отрывок

Oracle SQL. 100 шагов от новичка до профессионала - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Максим Чалышев
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Вывести те телефоны, которые есть в таблице MAN и таблице AUTO.

Рисунок 134. Демонстрация работы INTERSECT

Вывести CITYCODE, которые есть в таблицах MAN и CITY.

Рисунок 135. Демонстрация работы INTERSECT

Важные замечания

Так же, как и в предыдущем шаге, данные в наборах должны быть однотипны, то есть последовательность полей и типы данных в обоих наборах должны быть одинаковы. А также, естественно, количество выводимых колонок должно совпадать в каждом наборе.

Вопросы учеников

Можно ли заменить оператор MINUS другими операторами языка SQL?

Да, например оператором IN или NOT IN, вот пример.

Вывести те номера телефонов, которые есть в MAN, но которых нет в таблице AUTO.

Можно ли использовать NOT с операторами MINUS и INTERSECT?

Нет, синтаксис SQL не позволяет этого сделать.

Контрольные вопросы и задания для самостоятельного выполнения

1. Найдите, какие строки есть в AUTO, но нет в AUTO1. Используйте MINUS.

2. Найдите совпадение из AUTO и AUTO1. Используйте INTERSECT.

День десятый

Шаг 46. Повторение материала. Сочетание операторов множеств и предикатов

Введение

Повторим материалы предыдущего занятия. Продемонстрируем, как можно сочетать предикаты ANY, SOME, ALL с подзапросами и операторами MINUS, INTERSECT, UNION.

Теория и практика

Логические операторы можно эффективно сочетать с различными типами подзапросов, а также с MINUS, INTERSECT, UNION. Приведем несколько примеров таких эффективных сочетаний.

Пример 1.Выберите из таблицы AUTO автомобили, которые принадлежат людям, для которых нет соответствия в таблице CITY, используйте MINUS.

Данный запрос не вернул ни одной записи.

Пример 2.Немного переделаем задание.

Выберите из таблицы AUTO автомобили, которые принадлежат людям, для которых есть записи в таблице CITY, где PEOPLES <100 000, используйте MINUS.

Запрос демонстрирует использование MINUS с подзапросом.

Рисунок 136. Демонстрация работы MINUS с подзапросом

Пример 3.Выберите из таблицы AUTO записи, для которых есть соответствие в таблицах MAN и MAN1.

Рисунок 137. Демонстрация работы ANY

Важные замечания

При использовании операторов MINUS, UNION, INTERSECT необходимо следить, чтобы наборы данных совпадали, чтобы наборы колонок и типы данных в этих колонках были идентичны.

Вопросы учеников

Может ли оператор UNION использоваться в запросах-группировках?

Да, вот пример такого запроса:

Можно ли создать запрос, который бы работал со вложенным UNION?

Пример подобного запроса:

Чем можно заменить MINUS INTERSECT?

Запросами с использованием подзапросов EXISTS и IN. Попробуйте написать подобные запросы самостоятельно.

Контрольные вопросы и задания для самостоятельного выполнения

1. Повторите материалы данного шага.

2. Объясните использование операторов работы с множествами (UNION, MINUS, INTERSECT) совместно с подзапросами.

3. Напишите запрос, выбирающий записи из MAN, для которых есть записи в таблицах AUTO и AUTO1.

4. Выберите из таблицы AUTO записи, для которых есть соответствие в таблице MAN и которых нет в MAN1.

Шаг 47. Обновление данных и удаление данных с использованием подзапросов

Введение

Сложные подзапросы, которые мы изучали в предыдущих шагах, очень часто используются в командах обновления данных и удаления данных.

Теория и практика

Обновление строк UPDATE

Напишем запрос для обновления данных в таблице MAN, где люди проживают в городах с населением более миллиона жителей.

Задание звучит следующим образом.

Обновите возраст людей в таблице MAN (YEAROLD +1) у тех людей, которые проживают в городах с населением (PEOPLES) более миллиона человек.

Обновите возраст людей в таблице MAN (YEAROLD +1) только у тех людей, для которых людей с таким же возрастом нет в таблице MAN.

Обновите возраст людей, чье имя начинается с буквы «О», на сумму всех возрастов людей из таблицы MAN с именем Алексей.

Удаление строк DELETE

Подобный синтаксис можно использовать и при удалении данных с помощью команды DELETE.

Например, удалите из таблицы AUTO1 все записи, которых нет в таблице AUTO.

Важные замечания

Команды UPDATE и DELETE требуют завершения командой COMMIT для фиксации изменений в базе данных.

Следует с особой осторожностью относиться к выполнению данных команд, так как после их выполнения восстановить данные в первоначальном виде может быть довольно сложно.

Важный лайфхак: лично я сначала всегда пытаюсь написать запрос SELECT, который вернет мне нужные данные, а уже потом преобразую этот запрос в команду UPDATE или DELETE.

Вопросы учеников

Понятно, что различные типы подзапросов можно использовать с операторами UPDATE, DELETE, а как воспользоваться конструкциями MINUS и INTERSECT для этих команд?

Да, это возможно. Например, удалите из таблицы AUTO1 все записи, которых нет в таблице AUTO.

Контрольные вопросы и задания для самостоятельного выполнения

1. Напишите команду для удаления из таблицы MAN всех строк с информацией о людях, проживающих в городах с населением 200 000.

2. Обновите номера автомобилей, добавив к номеру 111 в конце строки, только тех, для которых нет совпадающих телефонов в таблице MAN.

Шаг 48. Нормализация. Проектирование базы данных. Основы

Введение

Нормализация — это правила, позволяющие улучшить, оптимизировать базу данных.

Нормализация ставит задачу обеспечить поддержку целостности данных. Нормализация — процесс, обеспечивающий хранение одного элемента в одном-единственном экземпляре в базе данных, позволяя тем самым избегать дублирования.

База данных считается нормализованной, если ее таблицы представлены как минимум в третьей нормальной форме.

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

То есть нормализация — это процесс приведения базы данных и структуры хранения данных к нормальным формам.

Существует шесть нормальных форм, для создания нормализованной базы данных достаточно знать первые три формы.

Теория и практика

Ненормализованная база данных

У таблиц нет первичных ключей, информация в строках таблиц дублируется, в одной колонке таблицы содержится несколько неатомарных значений.

Пример такой таблицы:

Рисунок 136. Таблица ненормализованная

У таблицы нет первичных ключей, и в колонках CITY и CARS содержатся неатомарные значения.

Первая нормальная форма

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Максим Чалышев читать все книги автора по порядку

Максим Чалышев - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Oracle SQL. 100 шагов от новичка до профессионала отзывы


Отзывы читателей о книге Oracle SQL. 100 шагов от новичка до профессионала, автор: Максим Чалышев. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x