LENGTHB¶
说明¶
求字符串长度(字节数)。
示例¶
示例1: 使用 LENGTHB 计算字符串所占字节数
-- 使用 LENGTHB 计算字符串所占字节数
-- CHAR或VARCHAR类型不包含输入字符串右边的空格
SELECT LENGTHB(' a');
LENGTHB(int) |
------------------
2 |
总数目:1
SELECT LENGTHB(' ab '::CHAR(20));
LENGTHB(int) |
------------------
20 |
总数目:1
SELECT LENGTHB(' ab '::TEXT);
LENGTHB(int) |
------------------
6 |
总数目:1
SELECT LENGTHB(' ab '::VARCHAR(20));
LENGTHB(int) |
------------------
6 |
总数目:1
示例2: 打开 ENABLE_CHARACTER_LENGTH 计算字符串所占字节数(以 GBK 编码库为例)
-- 打开 ENABLE_CHARACTER_LENGTH
SET ENABLE_CHARACTER_LENGTH = TRUE;
-- 计算字符串长度(以 GBK 编码库为例)
SELECT LENGTH(' 你好 '::VARCHAR(20));
LENGTH(int) |
-----------------
6 |
总数目:1
-- 关闭 ENABLE_CHARACTER_LENGTH
SET ENABLE_CHARACTER_LENGTH = FALSE;
-- 计算字符串长度
SELECT LENGTH(' 你好 '::VARCHAR(20));
LENGTH(int) |
-----------------
8 |
总数目:1
-- 重置参数
RESET ENABLE_CHARACTER_LENGTH;
示例3: 使用 LENGTHB 计算字符串所占字节数(打开兼容 ORACLE 参数)
-- 计算字符串所占字节数(打开兼容 ORACLE 参数)
-- CHAR 类型计算长度就会是其定义长度
SELECT LENGTHB(' ab '::char(20));
LENGTHB(int) |
------------------
20 |
总数目:1
-- VARCHAR 类型计算长度会包含末尾空格
SELECT LENGTHB(' ab '::varchar(20));
LENGTHB(int) |
------------------
6 |
总数目:1