Определение длины строки (в байтах)
Функция
Определение длины строки в байтах.
Спецификация
< синтаксис >
::=OCTET_LENGTH (строка)
Общие правила
-
< Строка >должна иметь типCHAR,VARCHAR,NCHAR,NCHAR VARYING. -
< Строка >может быть задана< SQL-параметром >, который должен содержать спецификацию типа данных параметра.select octet_length(? (nchar(20))); Тестовая строка | 30|
Возвращаемое значение
-
Если
< строка >имеет тип данныхCHAR, VARCHAR, то возвращаемое значение аналогично функцииLENGTH. -
Если
< строка >имеет тип данныхNCHAR, NCHAR VARYING, то возвращаемое значение равно L*2 байтам, где L – длина< строки >в символах. -
Тип возвращаемого значения –
INT.
Пример
create table tab1 (ch char(10), vc varchar(10), nc nchar(10), nvc nchar varying(10));
insert into tab1(ch, vc, nc, nvc) values('12345', '12345', hex('67458821fc75'), hex('00de54326642'));
select octet_length(ch), octet_length(vc), octet_length(nc), octet_length(nvc) from tab1;
| 5 | 5 | 6 | 6 |