#BIT_LENGTH

BIT_LENGTH
BIT_LENGTH ( expr )

BIT_LENGTH函数按比特位统计expr的长度,返回一个BIGINT的数值。

该函数不支持向量化计算。

expr的值须为字符型/BIT类型,或可转化为字符型的其他类型(不包括浮点型)。

当expr的值为NULL时,函数返回NULL。

当expr为字符型或转换后为字符型时,函数统计所有字符所占比特位之和。对于中文字符,其比特位长度与数据库服务端字符集类型相关,例如,在UTF8字符集环境中,一个中文字符占24比特位,而在GBK字符集环境中,一个中文字符占16比特位。

当expr为BIT类型时,函数统计该BIT数字所占的比特位之和。

函数中的expr不能为XMLTYPE类型。

示例

--UTF8字符集环境
SELECT CHAR_LENGTH('深圳') r1,OCTET_LENGTH('深圳') r2,BIT_LENGTH('深圳') r3
FROM DUAL;
                   R1                    R2                    R3 
--------------------- --------------------- --------------------- 
                    2                     6                    48
    
--GBK字符集环境
SELECT CHAR_LENGTH('深圳') r1,OCTET_LENGTH('深圳') r2,BIT_LENGTH('深圳') r3
FROM DUAL;
                   R1                    R2                    R3 
--------------------- --------------------- --------------------- 
                    2                     4                    32

--BIT数据
SELECT BIT_LENGTH(b'101') rb, BIT_LENGTH('101') rc, BIT_LENGTH(101) rn
FROM DUAL;
                   RB                    RC                    RN 
--------------------- --------------------- --------------------- 
                    8                    24                    24
pdf-btn 下载文档
copy-btn 复制链接