Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Работа с Oracle / 2 - Простые запросы Oracle.docx
Скачиваний:
6
Добавлен:
28.06.2021
Размер:
758.03 Кб
Скачать
    1. Оператор in

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

Следующий запрос выдает список книг, входящих в каталоги «Интернет» и «Сети». Этот запрос может быть составлен с двумя условиями, объединенными оператором OR, но с оператором IN он выглядит проще:

    1. Оператор exists

Используется для проверки наличия строк во вложенном выборе. Если в списке результатов вложенного запроса нет, устанавливается логическое «ложь». Оператор EXISTS чаще всего используется с более сложной формой вложенного запроса, называемой коррелированным вложенным запросом, когда данные из внешнего запроса сравниваются со строками во вложенном запросе. Подобный запрос можно составить также с использованием оператора IN или соединения.

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

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

Оператор

Описание

+

Сложение

Вычитание

*

Умножение

/

Деление

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

  1. Основные функции sql

Функция – специальная программа, возвращающая при вызове единственное значение. В SQL функция всегда требует наличия выражения, которое включает имена полей. Чаще всего функции используются в списке полей в запросе SELECT и вызываются для каждой строки, обрабатываемой запросом.

Ряд функций предоставляется поставщиком СУБД, но можно написать собственные функции на языке PL/SQL, включенном в поставку Oracle.

Функции группируют по типу работы, которую они выполняют. Самые популярные функции описаны ниже, но в документации к Oracle будет описано больше функций.

    1. Символьные функции

Работают с символьными данными.

Конкатенация строк

Функция объединяет несколько строк вместе для формирования одного столбца значений в результатах запроса. Стандартная функция конкатенации строк в SQL вызывается с помощью двух вертикальных черт (||).

Фирма решила разослать всем клиентам-женщинам поздравления с 8 Марта и обращением, состоящим из слов «Дорогая», имени и отчества адресата:

Функция UPPER

Функция переводит все символы строки в верхний регистр. Цифры и спе­циальные символы остаются без изменения. Используется в условиях WHERE.

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

Предположим, что вы забыли, в каком регистре (верхнем или нижнем) хранится значение статуса пользователя. Если в условии WHERE вы возведете все в верхний регистр, то сможете получить правильный результат в любом случае:

Функция LOWER

Выполняет действие, противоположное функции UPPER, – переводит все символы строки в нижний регистр. Ее также можно использовать в условии WHERE, если не известно, в каком регистре хранится текст, который необходимо найти:

Функция SUBSTR

Возвращает часть строки, определенную параметрами, включающими имя поля, первую позицию возвращаемых данных и число символов (длину), которую необходимо возвратить. Вместо имени поля можно указать строковую константу:

SUBSTR (имя_поля, начальная_позиция, длина)

Функция LENGTH

Возвращает длину строки: