Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
BD / Labs / Russian / Lab4R-SELECTBasicFeatures.doc
Скачиваний:
39
Добавлен:
20.02.2016
Размер:
346.62 Кб
Скачать

Старшинство операторов

Старшинство – это порядок, в котором SQL Oracle вычисляет операторы в одном выражении. При вычислении выражения со многими операторами Oracle вычисляет сначала операторы с более высоким старшинством, а затем с более низким. SQL Oracle вычисляет операторы с одинаковым старшинством слева направо в пределах выражения.

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

Оператор

Операция

+, -  

унарные плюс и минус  

*, /  

умножение, деление 

+, -, ||  

сложение, вычитание, конкатенация

=, !=, <, >, <=, >=, IS NULL, LIKE, BETWEEN, IN

сравнение

NOT  

логическое отрицание  

AND  

конъюнкция 

OR  

дизъюнкция  

Можно использовать круглые скобки для задания порядка вычисления выражения

. Oracle вычисляет сначала выражение внутри круглых скобок.

SQL Oracle также поддерживает теоретико-множественные операторы (UNION, UNION ALL, INTERSECT, и MINUS), которые оперируют множествами строк, возвращаемыми запросами, а не отдельными элементами данных. Эти операторы имеют одинаковое старшинство.

Арифметические операторы

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

Оператор

Назначение

Пример

+, -  

Обозначает положительное или отрицательное выражение. Это унарные операторы.

SELECT * FROM orders SELECT * FROM TEACHER

WHERE qtysold = -1; WHERE -Salary < 0;

*, /  

Бинарные: умножение и деление.

UPDATE TEACHER SET Salary = Salary * 1.1;

+, -  

Бинарные: сложение и вычитание

SELECT Salary + Commission FROM TEACHER

WHERE SYSDATE - Hiredate > 365;

НЕ используйте два последовательных символа минус

(--) в арифметических выражениях для указания двойного вычитания или вычитания из отрицательного значения. Символы -- используются для указания комментариев в предложениях SQL (См. Приложение C). В этом случае вы должны разделить два последовательных знака минус пробелами или круглыми скобками .

Оператор конкатенации

Оператор конкатенации манипулирует строками символов.

Оператор

Назначение

Пример

||  

Конкатенирует две строки символов.

SELECT 'Name is ' || Name FROM FACULTY;

В результате конкатенации получается другая строка символов

. Если обе строки символов типа CHAR, то результат тоже имеет тип CHAR и ограничен 2000 символами. Если хотя бы одна строка типа VARCHAR2, то результат имеет тип VARCHAR2 и ограничен 4000 символами. Пробелы в конце строк сохраняются не зависимо от их типа .

Oracle предоставляет также функцию CONCAT в качестве альтернативы оператора конкатенации.

Oracle трактует строку символов нулевой длины как null, конкатенация строки нулевой длины с другой строкой всегда дает вторую строку в качестве результата. NULL в результате конкатенации получается в том случае, когда обе строки имеют нулевую длину. Однако этот принцип может быть изменен в последующих версиях Oracle. Используйте функцию NVL для явного преобразования строк нулевой длины.

Соседние файлы в папке Russian