Определение длины строки (в байтах)

Функция

Определение длины строки в байтах.

Спецификация
 
< синтаксис >::=
OCTET_LENGTH (строка)
Общие правила
  1. < Строка > должна иметь тип CHAR, VARCHAR, NCHAR, NCHAR VARYING.

  2. < Строка > может быть задана < SQL-параметром >, который должен содержать спецификацию типа данных параметра.

    select octet_length(? (nchar(20)));
    Тестовая строка
    |         30|

Возвращаемое значение
  1. Если < строка > имеет тип данных CHAR, VARCHAR, то возвращаемое значение аналогично функции LENGTH.

  2. Если < строка > имеет тип данных NCHAR, NCHAR VARYING, то возвращаемое значение равно L*2 байтам, где L – длина < строки > в символах.

  3. Тип возвращаемого значения – 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 |