Максим Чалышев - 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 шагов от новичка до профессионала - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Максим Чалышев
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

3. Выберите только те названия городов из таблицы CITY, где в таблице MAN не более одного человека, используйте EXISTS.

4. Найдите количество автомобилей каждой марки, которые купили люди старше 29 лет. Используйте подзапрос с IN.

Шаг 40. Сочетание разных типов подзапросов

Введение

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

Перечислим типы подзапросов, с которыми мы познакомились:

— подзапросы как дополнительная колонка в основном запросе;

— подзапросы с оператором IN;

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

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

Попробуем сейчас сочетать эти несколько типов подзапросов в одном главном большом запросе, в одной большой команде SELECT.

Сразу перейдем к практике.

Вывести на экран данные из таблицы MAN и таблицы AUTO: имя, фамилию (FIRSTNAME, LASTNAME) человека, цвет машины (COLOR), марку машины (MARK) для людей, чей возраст (YEAROLD) больше 35 лет, и как дополнительную колонку вывести с помощью подзапроса информацию о том, сколько машин этого же цвета (COLOR) в таблице AUTO.

Рисунок 121. Запрос MAN, AUTO сложный

Вывести на экран данные из таблицы MAN *, где имя человека (FIRSTNAME) больше шести букв и эти люди живут в городе с населением (PEOPLES) больше 1 миллиона человек.

Рисунок 122. Запрос MAN, CITY

Вывести на экран данные из таблицы CITY и таблицы MAN, где население (PEOPLES) больше 1 миллиона человек, вывести как дополнительный столбец город (CITYNAME), у которого код города больше на 1.

Рисунок 123. Запрос MAN, AUTO: сложный запрос

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

Подзапрос, который возвращает единственную запись, можно также использовать в конструкции WHERE при проверке на равенство значений.

Приведу пример:

Естественно, такой запрос должен возвращать одну-единственную строку, а также выводить в качестве результата только одну колонку.

При таком подходе считается стандартной практикой использование псевдонимов для подзапросов.

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

Если в одном из подзапросов будут сгруппированные данные с помощью GROUP BY, такой запрос будет работать?

Разумеется, будет, и вот пример такого запроса. Подобные запросы мы разбирали в предыдущем шаге.

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

1. Вывести все автомобили AUTO *, которые приобрели люди, проживающие в городе (CITY) с населением (POPULATION) больше 1 миллиона человек. Вывести как колонку, как дополнительное поле подзапрос «название города» (CITYNAME) рядом с маркой автомобиля.

2. Вывести все автомобили AUTO *, которые приобрели люди, проживающие в городе (CITY) с населением (PEOPLES) больше 1 миллиона человек. Вывести как колонку подзапрос «название города» (CITYNAME) рядом с маркой автомобиля.

День девятый

Шаг 41. Предикаты ANY, SOME и ALL

Введение

Рассмотрим на этом шаге незаслуженно забытые, нечасто используемые на практике конструкции языка SQL — ANY, ALL. Тем не менее данные конструкции обладают исключительными возможностями.

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

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

Давайте рассмотрим на примерах:

Вывести из таблицы AUTO только те машины, для которых в таблице AUTO есть машины такой же марки.

Рисунок 124. Работа предиката ANY

Вывести из таблицы AUTO те машины, для которых в таблице AUTO есть машины такого же цвета.

Рисунок 125. Работа предиката ANY: таблица AUTO

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

Ключевое отличие от предиката и ANY в том, что мы можем использовать операции больше и меньше (> или <).

Следующие запросы являются примером данного предиката.

Вывести на экран с помощью SELECT всех людей из таблицы MAN, чей возраст больше возраста каждого человека, который проживает в городе Владимир.

Рисунок 126. Работа предиката ALL: таблицы CITY, MAN

Вывести на экран с помощью SELECT всех людей из таблицы MAN, чей возраст меньше каждого человека, у которого автомобиль BMW.

Рисунок 127. Работа предиката ALL: таблицы AUTO, MAN

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

Обратите внимание, что конструкции ALL и ANY используются в WHERE как результат сравнения значения ячейки в заданной колонке со списком значений. То есть сначала название поля, а затем уже подзапрос.

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

Можно ли использовать ALL и ANY со знаком неравенства?

Да, можно, и вот примеры таких запросов.

Вывести на экран с помощью SELECT всех людей из таблицы MAN, чей возраст не равен возрасту каждого человека, у которого автомобиль BMW.

Вывести из таблицы AUTO машины, если в таблице AUTO нет машин такого же цвета.

Подобным образом можно оформить такой же запрос с конструкцией NOT.

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

1. Повторить запросы из этого шага.

2. Вывести все города, где количество проживающих людей больше, чем количество людей в городах с CITYCODE 5, 6, 7.

3. Вывести на экран с помощью SELECT всех людей из таблицы MAN, чей возраст меньше каждого человека, у которого автомобиль BMW.

Шаг 42. Преобразование типов данных

Введение

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

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

В SQL ORACLE диалекта существует несколько функций для преобразования типов данных.

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

Универсальная функция TO_CHAR.

Рассмотрим несколько примеров работы функции TO_CHAR.

Синтаксис

Преобразование даты в текстовый формат

YYYY — полный формат года;
YY — краткий формат года;
MM — месяц;
DY — день недели;
hh24 — часы, также возможны варианты с AM и PM, подробнее в документации;
mi — минуты;
ss — секунды.

Примеры работы функции TO_CHAR для преобразования дат в строку

Показать текущий день недели.

Показать текущую дату как в примере 22-10-2018 23:11:11, преобразовав к строке.

Показать текущую дату как в примере 22.10.18 23:11:11, преобразовав к строке.

Показать текущую дату как в примере 2018.10.22 23:11:11, преобразовав к строке.

Преобразование числовых значений в текстовый формат

0 — число c лидирующим 0;
99 — число.

Примеры

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

Интервал:

Закладка:

Сделать


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

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




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


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


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

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