视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
OracleLength和Lengthb函数说明
2020-11-09 11:53:34 责编:小采
文档

一.官网的说明 http://download.Oracle.com/docs/cd/E11882_01/server.112/e26088/functions088.htm#SQLRF00658 Purpose The LEN

一.官网的说明

.com/docs/cd/E11882_01/server.112/e26088/functions088.htm#SQLRF00658

Purpose

The LENGTH functionsreturn the length of char. LENGTH calculates length usingcharacters as defined by the input character set.

--返回以字符为单位的长度.

LENGTHB usesbytes instead of characters.

--返回以字节为单位的长度.

LENGTHC usesUnicode complete characters.

--返回以Unicode完全字符为单位的长度.

LENGTH2 usesUCS2 code points.

--返回以UCS2代码点为单位的长度.

LENGTH4 usesUCS4 code points.

--返回以UCS4代码点为单位的长度.

char can beany of the data types char, varchar2, nchar, nvarchar2, clob,or nclob.

The exceptionsare LENGTHC, LENGTH2, and LENGTH4, which do not allow char tobe a CLOB or NCLOB. The return value is of data type NUMBER.If char has data type CHAR, then the length includes all trailingblanks. If char is null, then this function returns null.

Restriction on LENGTHB (Lengthb函数的)

The LENGTHB functionis supported for single-byte LOBs only. It cannot be used with CLOB and NCLOB datain a multibyte character set.

Examples

The followingexample uses the LENGTH function using a single-byte databasecharacter set:

SELECT LENGTH('CANDIDE') "Length incharacters" FROM DUAL;

Length in characters

--------------------

7

The next example assumes a double-bytedatabase character set.

SELECT LENGTHB ('CANDIDE') "Length inbytes" FROM DUAL;

Length in bytes

---------------

14

二.示例说明

在不同的数据库,因为字符集的不同,LENGTHB得到的值可能会不一样。如ZHS16GBK采用两个byte位来定义一个汉字。而在UTF8,,采用3个byte。

SYS@anqing1(rac1)> SELECT USERENV('LANGUAGE') FROM DUAL;

USERENV('LANGUAGE')

----------------------------------------------------

AMERICAN_AMERICA.ZHS16GBK

SQL>select length('安庆') from dual;

2

SQL>select lengthb('安庆') from dual;

4

SQL>select length('AnQing') from dual;

6

SQL>select lengthb('AnQing') from dual;

6

通过这个示例,我们可以看出来,Length 和 Lengthb 函数的一个重要用处,就是用来判断记录值里是否有中文内容。

如果有中文,那么Length() != Lengthb()

如果没有中文,那么Length() == Lengthb()

下载本文
显示全文
专题