#LENGTH2

length2
LENGTH2 ( expr )

LENGTH2函数统计expr的值的长度,expr的值须为字符型,或可转化为字符型的其他类型,但不能为BIT、XMLTYPE、LOB类型。支持以UTF16编码计算长度,返回一个BIGINT的数值。

LENGTH2按字符统计长度,与CHAR_LENGTH和CHARACTER_LENGTH函数同义。

本函数遵循如下规则:

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

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

示例(HEAP表)

--UTF8字符集环境
SELECT LENGTH2('深圳') r1,LENGTH('深圳') r2,
LENGTH2('aabbccDDee') r3,LENGTH('aabbccDDee') r4,
LENGTH2(null) r5,LENGTH(null) r6
FROM DUAL;
   R1   R2    R3    R4    R5    R6
----- ---- ----- ----- ----- -----
    2    2    10    10
    
--GBK字符集环境
SELECT LENGTH2('深圳') r1,LENGTH('深圳') r2
FROM DUAL;
                   R1                    R2 
--------------------- --------------------- 
                    2                     2

--LENGTH与LENGTH2的区别                  
SELECT LENGTH(TO_CHAR('😂')) FROM DUAL;

LENGTH(TO_CHAR('😂'))
-----------------------
                      1

SELECT LENGTH2(TO_CHAR('😂')) FROM DUAL;

LENGTH2(TO_CHAR('😂')
-----------------------
                      2

pdf-btn 下载文档
copy-btn 复制链接