Значение заданного байта
Функция
Получить значение заданного байта.
Спецификация
Варианты:
::=
::=
::=
Синтаксические правила
-
< Смещение байта >
– целое положительное число, задающее положение байта в< значимом выражении >
. Нумерация байтов начинается с нуля. -
Допустимые значения
< смещения байта >
:Тип аргумента
< значимое выражение >Допустимый диапазон байтов
< смещение байта >CHAR(N) 0 – N-1 VARCHAR(N) 0 – N-1 BYTE(N) 0 – N-1 NCHAR(N) 0 – N-1 VARBYTE(N) 0 – N-1 NCHAR VARYING(N) 0 – N-1 DECIMAL (NUMERIC) 0 –15 BIGINT 0 – 7 INT 0 – 3 SMALLINT 0 – 1 REAL 0 – 3 (зависит от архитектуры) DOUBLE 0 – 7 (зависит от архитектуры) DATE 0 – 15 TRUE (FALSE) 0 BLOB 0 – 23 (значения из описателя BLOB-данных) -
Тип
< значимого выражения >
не проверяется. -
Аргументы
< значимое выражение >
и< смещение байта >
могут быть заданы< SQL-параметром >
, который должен содержать спецификацию типа данных параметра.select getbyte(? (bigint),? (int)); 56334289754 2 | 201|
Возвращаемое значение
-
Значение указанного байта в
< значимом выражении >
. -
Тип возвращаемого значения:
GETBYTE
–INT
,GETBYTEB
–BYTE(1)
. -
Если задано недопустимое смещение, фиксируется исключительная ситуация.
Пример
select getbyte('a',0),getbyte('A',0),getbyte(hex('FC0A'),1), getbyte(4567,1), getbyte(to_char(sysdate,'dd/mm/yyyy'),5) from person where personid=2; |97 |65 |10 |17 |47 |