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

Вывести из таблицы CITY название города (CITYNAME), квадратный корень от количества населения (PEOPLES), где значение кода города (CITYCODE) делится нацело на 3.

Рисунок 44. Запрос к CITY с математическим выражением

Вывести из таблицы CITY название города (CITYNAME), код города, разделенный на 3 (CITYCODE), где значение населения (PEOPLES), разделенное на 100, не больше 1 000 000.

Рисунок 45. Запрос к CITY: математическое выражение WHERE и SELECTLISt

<p>Важные замечания</p>

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

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

<p>Вопросы учеников</p>

Зачем использовать псевдонимы для колонок, которые рассчитываются как математические выражения?

Для удобного, понятного отображения названия колонки.

Где найти полный перечень математических функций, поддерживаемых СУБД?

В документации по вашей СУБД.

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

1. Вывести из таблицы MAN имя, фамилию и квадратный корень 10.

2. Вывести из таблицы MAN имя, фамилию и возраст человека, умноженный на cos (5).

3. Вывести из таблицы CITY записи (*), где популяция делится без остатка на 10 000.

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

Продолжением данного шага является следующий шаг, посвященный таблице DUAL.

<p>Шаг 22. Запрос к результату выражения и специальная таблица DUAL</p><p>Введение</p>

В SQL ORACLE диалекта есть специальная таблица DUAL. Если в других СУБД существуют альтернативные варианты синтаксиса, то для SQL ORACLE необходимо использовать таблицу DUAL.

<p>Теория и практика</p>

Данная таблица выполняет следующие задачи:

• делает удобным вывод в запросе «результаты вычислений математического выражения»;

• помогает при вычислении функции, которая возвращает одно значение.

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

Разберем на примерах:

Вычислить значение математического выражения 1000* (123—11) /100 с помощью SELECT.

Рисунок 46. Вычисление выражения

Вычислить значение функции sIN (10) /100 с помощью SELECT.

Рисунок 47. Вычисление выражения, таблица DUAL

Вычислить значение текущей даты с помощью SELECT.

– 21.11.1999 11:22

Вычислить значение sIN (1) *cos (1) с помощью SELECT.

Рисунок 48. Вычисление выражения и таблица sIN (1) * cos (1)

<p>Важные замечания</p>

При обращении к таблице DUAL запрос возвращает всего одну строку, при попытке добавить запись в таблицу DUAL могут произойти непредсказуемые последствия, не рекомендую это делать.

<p>Вопросы учеников</p>

Вы говорили, что в других СУБД, например MS SQL, можно обойтись без таблицы DUAL?

Да в MS SQL, например, будет работать такой запрос: SELECT sIN (1), здесь нет FROM, ORACLE в этом случае более соответствует стандарту SQL ANSI 92.

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

1. Вычислить значение площади квадрата со стороной 5 с помощью SELECT и DUAL.

2. Вычислить значение площади круга с радиусом 7 помощью SELECT и DUAL.

3. Вычислить значение выражения 100*sIN (1) *cos (3) с помощью SELECT и DUAL.

Перейти на страницу:

Похожие книги

1С: Управление небольшой фирмой 8.2 с нуля. 100 уроков для начинающих
1С: Управление небольшой фирмой 8.2 с нуля. 100 уроков для начинающих

Книга предоставляет полное описание приемов и методов работы с программой "1С:Управление небольшой фирмой 8.2". Показано, как автоматизировать управленческий учет всех основных операций, а также автоматизировать процессы организационного характера (маркетинг, построение кадровой политики и др.). Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, формировать разнообразные отчеты, выводить данные на печать. Материал подан в виде тематических уроков, в которых рассмотрены все основные аспекты деятельности современного предприятия. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов. Все приведенные в книге примеры и рекомендации основаны на реальных фактах и имеют практическое подтверждение.

Алексей Анатольевич Гладкий

Экономика / Программное обеспечение / Прочая компьютерная литература / Прочая справочная литература / Книги по IT / Словари и Энциклопедии