Арифметичні оператори в запитах oracle sql

2.2 Арифметичні оператори Oracle. Спеціальна таблиця DUAL

Арифметичні оператори в запитах Oracle SQL, унарні і бінарні оператори, спеціальна таблиця DUAL

Оператори - це синтаксичні конструкції мови, які призначені для виконання певних дій.

У Oracle SQL передбачено безліч операторів, як цілком звичних (наприклад, арифметичні або логічні), так і екзотичних (оператори для роботи з ієрархічними наборами записами, з безліччю записів - MULTISET). Крім того, користувачам дозволено визначати свої власні оператори. Кожен з типів операторів буде розглянуто в своєму розділі. У цьому розділі буде розглянуто тільки найпростіший тип операторів - арифметичні.

Всі оператори Oracle SQL можна поділити на два основних типи: унарні і бінарні. Унарні оператори працюють тільки з одним значенням. Наприклад, до унарним операторам відноситься оператор (-): якщо для нього використовувати тільки одне значення, він поміняє знак числа.

Бінарні оператори працюють з двома значеннями. Наприклад, в вираженні 10-7 оператор (-) - це бінарні оператор, який виробляє віднімання.

У Oracle SQL передбачений стандартний набір арифметичних операторів, які знайомі нам з дитинства:

До арифметичним також відносяться унарні оператори (+) і (-), які визначають знак числа. Пріоритет арифметичних операторів також звичний: найвищий пріоритет у унарних операторів, потім виконується множення і ділення, а після цього - додавання і віднімання. Порядок застосування операторів регулюється круглими дужками.

Застосування унарна оператора до значення типу NULL дасть в результаті NULL.

Арифметичні оператори можна використовувати навіть в таких запитах, в яких взагалі не використовуються стовпці:

SELECT 10 * 15 FROM hr.employees;

Однак в цьому випадку результат буде повторений 107 разів, що, швидше за все, нам не потрібно. Для виконання запитів, в яких взагалі не використовуються стовпчики з бази даних, в Oracle зарезервована спеціальна таблиця DUAL (в SQL Server вона не передбачена). У цій таблиці - всього один стовпець DUMMY з єдиним значенням x. Наш запит з використанням цієї службової таблиці може виглядати так:

SELECT 10 * 15 FROM DUAL;

Отримати навчальні матеріали за цим курсом