Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Часть II.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
1.56 Mб
Скачать

Встроенные функции

Хотя встроенные функции не были определены в стандарте SQL1, в большинстве СУБД такие функции реализованы. Многие из них выполняют различные преобразования типов данных.

В общем случае встроенную функцию разрешается использовать в любом месте инструкции SQL, в котором можно использовать константу того же типа данных. Невозможно перечислить все встроенные функции, поддерживаемые распространенными диалектами поскольку их слишком много. В стандарт SQL2 вошли наиболее полезные функции из различных СУБД. Эти функции перечислены в таблице.

Функция

Что возвращает

BIT_LENGTH (строка)

количество битов в цепочке

САSТ (значение АS тип данных)

значение, преобразованное в указанный тип данных (например, дата, преобразованная в строку)

CHAR_LENGTH (строка)

длина строки символов

CONVERT(строка USING функция)

строка, преобразованная в соответствии с указанной функцией

CURRENT_DATE

текущая дата

CURRENT_TIME (точность)

текущее время с указанной точностью

CURRENT_TIMESTAMP (точность)

текущие дата и время с указанной точностью

EXTRACT (часть FRОМ значение)

указанная часть (DAY, HOUR и т.д.) из значения типа DАТЕТIМЕ

LOWER (строка)

строка, переведенная в нижний регистр

POSITION (подстрока IN строка)

позиция, с которой начинается вхождение подстроки в строку

SUBSTRING (строка FROM n FOR длина)

часть строки, начинающаяся с n-го символа и имеющая указанную длину

TRANSLATE (строка USING функция )

строка, транслированная с помощью указанной функции

TRIM (ВОТН символ FRОМ строка)

строка, из которой удалены ведущие и хвостовые указанные символы

TRIM (LEADING символ FRОМ строка)

строка, из которой удалены ведущие указанные символы

TRIM (TRAILING символ FRОМ строка)

строка, из которой удалены хвостовые указанные символы

UPPER (строка)

строка, переведенная в верхний регистр

Отсутствующие значения

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

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

Во многих ситуациях значения NULL требуют от СУБД отдельной обработки Например, если пользователь просит вычислить сумму по столбцу, что СУБД должна делать со значениями NULL. при вычислении суммы? Ответ на подобные вопросы дает набор правил обработки значений NULL в различных инструкциях и предложениях SQL. Из-за необходимости включения таких правил в синтаксис языка SQL многие теоретики реляционньх баз данных считают, что значения NULL не следует использовать другие, в том числе доктор Кодд, отстаивают использование значений NULL двух видов, означающих “неизвестно” и “неприменимо”

Независимо от теоретических споров, значения NULL стали частью стандарта ANSI/ISO и реализованы почти во всех коммерческих СУБД.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]