OCTET_LENGTH 함수는 문자열 또는 비트열의 길이(byte)를 정수로 반환한다. 따라서, 비트열의 길이가 8비트인 경우에는 1(byte)을 반환하지만, 9비트인 경우에는 2(byte)를 반환한다.
OCTET_LENGTH ( string )
string :
• bit string
• character string
• NULL
--character set is euc-kr for Korean characters
SELECT OCTET_LENGTH('');
==================
0
SELECT OCTET_LENGTH('CUBRID');
==================
6
SELECT OCTET_LENGTH('큐브리드');
==================
8
SELECT OCTET_LENGTH(B'010101010');
==================
2
CREATE TABLE octet_length_tbl (char_1 CHAR, char_2 CHAR(5), varchar_1 VARCHAR, bit_var_1 BIT VARYING);
INSERT INTO octet_length_tbl VALUES('', '', '', B''); --Length of empty string
INSERT INTO octet_length_tbl VALUES('a', 'a', 'a', B'010101010'); --English character
INSERT INTO octet_length_tbl VALUES(NULL, '큐', '큐', B'010101010'); --Korean character and NULL
INSERT INTO octet_length_tbl VALUES(' ', ' 큐', ' 큐', B'010101010'); --Korean character and space
SELECT OCTET_LENGTH(char_1), OCTET_LENGTH(char_2), OCTET_LENGTH(varchar_1), OCTET_LENGTH(bit_var_1) FROM octet_length_tbl;
=== <Result of SELECT Command in Line 16> ===
================================================================================
1 5 0 0
1 5 1 2
NULL 5 2 2
1 5 3 2