Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
sdo.doc
Скачиваний:
2
Добавлен:
01.04.2025
Размер:
505 Кб
Скачать
☆

7.5. Групповые функции

Групповые функции имеют значение только в запросах и подзапросах.

Использование DISTINCT позволяет учитывать только различающиеся значения

аргумента "expr". При указании ALL (или по умолчанию) учитываются все значения

"expr". Например, DISTINCT при нахождении среднего значения из 1,1,1, и 3

дает результат 2, тогда как ALL при этой же операции дает результат 1.5.

Функция Возвращаемое значение

------------------- ----------------------------------------------------------

AVG([DISTINCT| Среднее значение "expr", с игнорированием пустых

ALL]expr) (NULL) значений

COUNT({[DISTINCT| Количество строк, в которых "expr" не является пустым

ALL]expr|*}) (NULL) значением. Установка "*" позволяет подсчитать

все выбранные строки, включая строки с NULL значениями

MAX([DISTINCT| Максимальное значение "expr"

ALL]expr)

MIN([DISTINCT| Минимальное значение "expr"

ALL]expr)

STDDEV([DISTINCT| Среднеквадратичное (стандартное) отклонение от "expr"

ALL]expr) с игнорированием пустых (NULL) значений

SUM([DISTINCT| Cумма значений "expr"

ALL]expr)

VARIANCE([DISTINCT| Дисперсия "expr", с игнорированием пустых значений

ALL]expr)

7.6. Прочие функции

Функция Возвращаемое значение

--------------- --------------------------------------------------------------

DUMP(expr[,k Строка символов, содержащая код типа данных, длину в байтах

[,m[,n]]] ) и внутреннее представление "expr". Необязательный аргумент

k позволяет задать представление возвращаемого значения:

8 - восьмеричное, 10 - десятичное, 16 - шестнадцатиричное,

17 - одиночные символы. Необязательный аргумент m задает

начальную позицию в "expr", а необязательный аргумент n

- длину возвращаемого значения, начиная с m.

GREATEST(expr1, Наибольшее значение из перечня. Пеpед сpавнением все выра-

expr2,...) жения пpеобpазуются к типу пеpвого выpажения.

LEAST(expr1, Наименьшее значение из перечня. Пеpед сpавнением все выра-

expr2,...) жения пpеобpазуются к типу пеpвого выpажения.

NVL(n,expr) Если n равно NULL, возвpащает "expr", иначе возвращает n.

n и "expr" могут быть любого типа. Тип возвpащаемой вели-

чины такой же как для n.

UID Целое число, уникальным образом идентифицирующее текущего

пользователя.

USER Имя текущего пользователя.

- 13 -

Функция Возвращаемое значение

--------------- --------------------------------------------------------------

USERNV(char) Информация о среде текущего сеанса. Если "char" равен:

`ENTRYID` - возвращается доступный идентификатор элемента,

за которым идет слежение;

`LANGUAGE` - возвращает используемый язык;

`SESSIONID` - возвращается идентификатор сеанса пользователя;

`TERMINAL` - возвращается идентификатор терминала пользо-

вателя (в терминах операционной системы).

VSIZE(expr) Число байтов во внутpеннем пpедставлении "expr".

8. Форматы

8.1. Числовые форматы (для fmt аргумента функции TO_CHAR)

Элемент Пример Описание

------- --------- ----------------------------------------------------------

9 9999 Количество цифр, определяющих ширину вывода.

0 0999 Вывод ведущих нулей.

$ $9999 Вывод перед значением знака доллара.

B B9999 Вывод пробелов вместо ведущих нулей.

MI 9999MI Вывод знака "-" после отрицательных чисел.

S S9999 Вывод "+" для положительных чисел и "-" для отрицательных.

PR 9999PR Вывод отрицательных чисел в <угловых скобках>.

D 99D99 Вывод десятичного разделителя.

G 9G999 Вывод разделителя групп (например, триад в денежных данных).

C C999 Вывод символа интернациональной денежной единицы.

L L999 Вывод конкретного денежного символа.

Запятая 9,999 Вывод запятой в указанной позиции.

Точка 99.99 Вывод точки в указанной позиции.

V 999V99 Умножение на 10 в N-ой степени, где N - задается в виде

количества девяток после `V`.

EEEE 9&999EEEE Вывод в экспоненциальной форме.

RN (rn) RN upper- or lower-case Roman numerals (numbers in range 1..3999).

DATE `DATE` Returns value converted from Julian date to `MM/DD/YY` date format.

DATE DATE Высвечивание в формате даты `MM/DD/YY`. Для дат,хранящихся

как числовые величины (ORACLE версия 2).

8.2. Символьные форматы

Символьный формат состоит из буквы `A` и следующего за ней указания ширины

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

указанную ширину, оно будет сдвинуто или обрезано в зависимости от того была

ли выполнена установка SET WRAP или SET TRUNC.

8.3. Форматы дат и времени

Формат Описание

------------------- ----------------------------------------

SCC или СС Век; `S`- префикс перед датой (до н.э.) с`-`.

YYYY или SYYYY Год; `S`- префикс перед датой (до н.э.) с`-`.

YYY или YY или Y Последние 3, 2 или 1 цифра(ы) года.

IYYY 4-цифры года в стандарте ISO.

IYY или IY или I Последние 3, 2 или 1 цифра(ы) года в стандарте ISO.

Y,YYY Год с запятой в данной позиции.

SYEAR или YEAR Год прописью. `S`-префикс перед датой (до н.э.) с`-`.

BC или AD BC/AD - (до н.э.) / ( н.э.).

B.C. или A.D. Аналогично BC/AD.

Q Квартал (четверть) года.

- 14 -

Формат Описание

------------------- ----------------------------------------

MM Номер месяца.

RM Номер месяца римскими цифрами (I..XII; JAN=I).

MONTH Имя месяца, дополненное пробелами до девяти символов.

MON Трехбуквенная аббревиатура имени месяца (JAN,FEB,...).

WW или W Неделя года (1-52) или месяца (1-5).

IW Неделя года в стандарте ISO (1..21 или 1..53).

DDD DD или D Номер дня года (1-366), месяца (1-31) или недели (1-7).

DAY Наименование дня, дополненное пробелами до 9 символов.

DY Трехбуквенная аббревиатура наименования дня.

J День по Юлианскому календарю; количество дней от

31 декабря 4713 до н.э.

AM или PM Указатель часового пояса.

A.M. или P.M. Указатель часового пояса с периодами.

HH или HH12 Время суток, интервал 1-12.

HH24 Время суток, интервал 0-23.

MI Минуты (0-59).

SS или SSSSS Секунды (0-59) или после полуночи (0-86399).

-/.,;: Пунктуация, которая воспроизводится в результате.

"...текст..." Строка в кавычках, которая воспроизводится в результате.

8.4. Префиксы и суффиксы, используемые в форматах

Префикс и суффиксы, которые могут быть добавлены к перечисленным выше кодам:

------------------------------------------------------------------------------

FM "Fill mode" (режим наполнения). Указанный перед MONTH или DAY,

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

FX "Format exact". Указанный в начале формата для функции TO_DATE,

проверяет соответствует ли преобразуемое значение заданному

формату. При несоответствии (например, лишние пробелы, другие

разделители и т.п.) - отвергает преобразование.

TH Порядковое число (напр.,"DDTH" для "4TH").

SP Число прописью (напр.,"DDSP" для "FOUR")

SPTH или THSP Порядковое число прописью (напр., "DDSPTH") для "FOURTH").

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

наличием заглавных букв в соответствующем форматном элементе.

Например, "DAY" дает "MONDAY", "Day" дает "Monday" и "day" дает "monday".

Модель формата даты может также включать в себя знаки пунктуации, такие

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

(не в апострофы). Пунктуация и константы появляются при выводе.

Например, DDth "of" Month, YYYY дает 15th of February, 1986.

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