`
ijavagos
  • 浏览: 1248079 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Oracle Length 和 Lengthb 函数说明

 
阅读更多

一.官网的说明

http://download.oracle.com/docs/cd/E11882_01/server.112/e26088/functions088.htm#SQLRF00658

Purpose

TheLENGTHfunctionsreturn the length ofchar.LENGTHcalculates length usingcharacters as defined by the input character set.

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

LENGTHBusesbytes instead of characters.

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

LENGTHCusesUnicode complete characters.

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

LENGTH2usesUCS2 code points.

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

LENGTH4usesUCS4 code points.

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

charcan beany of the data typeschar,varchar2,nchar,nvarchar2,clob,ornclob.

The exceptionsareLENGTHC,LENGTH2, andLENGTH4, which do not allow chartobe aCLOBorNCLOB. The return value is of data typeNUMBER.Ifcharhas data typeCHAR, then the length includes all trailingblanks. Ifcharis null, then this function returns null.

Restriction on LENGTHB(Lengthb函数的限制)

TheLENGTHBfunctionis supported for single-byte LOBs only. It cannot be used withCLOBandNCLOBdatain a multibyte character set.

Examples

The followingexample uses theLENGTHfunction 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()

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

Blog: http://blog.csdn.net/tianlesoftware

Weibo: http://weibo.com/tianlesoftware

Email: dvd.dba@gmail.com

DBA1 群:62697716(满); DBA2 群:62697977(满)DBA3 群:62697850(满)

DBA 超级群:63306533(满); DBA4 群:83829929(满) DBA5群: 142216823(满)

DBA6 群:158654907(满) DBA7 群:69087192(满)DBA8 群:172855474

DBA 超级群2:151508914 DBA9群:102954821 聊天 群:40132017(满)

--加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请

分享到:
评论

相关推荐

    oracle中length、lengthb、substr、substrb函数用法介绍

    在Oracle数据库中,处理字符串时经常会用到几个关键的函数,包括`length`、`lengthb`、`substr`和`substrb`。这些函数在处理不同编码的字符串时尤其重要,因为不同的字符集(如UTF-8)可能会影响字符串的实际存储...

    常用oracle字符串操作函数

    11. **SUBSTRB()** 和 **LENGTHB()** 函数: 这两个函数与SUBSTR()和LENGTH()类似,但在处理包含多字节字符(如Unicode字符)的字符串时更精确。 12. **CHR()** 函数: CHR() 可以将ASCII码转换为对应的字符。...

    oracle求字符串长度函数length()和hengthb()简介

    在Oracle数据库中,处理字符串是常见的操作,而`length()`和`lengthb()`函数则是用于获取字符串长度的两个重要函数。这两个函数可以帮助我们了解字符串在存储时占用的空间,从而进行有效的数据管理和分析。 1. `...

    Oracle函数大全.pdf

    - **length/lengthb/lengthc/length2/length4**: 返回字符串的长度。 - **nlssort**: 按照特定的排序规则排序字符。 - **trim**: 删除字符串两端的特定字符。 ### 第二章 数值型函数 数值型函数主要处理数字数据。...

    Oracle常用函数.txt

    在IT领域,尤其是在数据库管理与查询方面,Oracle作为业界领先的关系型数据库管理系统之一,提供了丰富的内置函数,以支持数据处理、分析和检索的各种需求。以下是从“Oracle常用函数.txt”文件中提炼出的关键知识点...

    Oracle实用函数大全

    `length`和`lengthb`函数分别返回字符串的字符数和字节数,后者在处理多字节字符集时更为准确: ```sql SELECT LENGTH('accp') FROM DUAL; SELECT LENGTHB('accp') FROM DUAL; ``` #### 2. 子串提取 `substr`函数...

    ORACLE 数据类型及常用函数培训

    Oracle 数据库是世界上最广泛使用的数据库管理系统之一,它拥有丰富的数据类型和函数,使得开发者能够高效地处理各种数据。以下是对标题和描述中提及的Oracle数据类型及常用函数的详细讲解。 **一、Oracle数据类型*...

    ORACLE函数大全

    如果字符串中包含多字节字符,可以使用LENGTHB函数,它按字节返回长度。 7. LOWER和UPPER函数 LOWER函数将字符串中的所有字符转换为小写,而UPPER函数则转换为大写。比如,LOWER('AaBbCcDd')返回'aabbccdd',UPPER...

    oracle中的函数总结

    LENGTH函数返回字符串的字符数,而LENGTHB函数返回字符串的字节数。例如: ```sql SELECT LENGTH('CANDIDE') "Lengthincharacters", LENGTHB('CANDIDE') "Lengthinbytes" FROM DUAL; ``` #### 9. TRIM 函数 TRIM...

    Oracle字符函数应用检测汉字的方法

    接下来,我们将介绍两种主要的方法来检测字段中是否含有汉字:使用ASCII函数和使用LENGTH与LENGTHB函数。 首先,我们使用ASCII函数检测汉字。在ASCII码表中,汉字字符的ASCII值的范围是\uFF00-\uFFFF。因此,我们...

    oracle函数字符处理

    以下是一些重要的Oracle字符处理函数的详细说明: 1. **SUBSTR()** 函数:用于从字符串中提取子串。例如,`SUBSTR(string, start_position, length)` 会返回从start_position位置开始,长度为length的子串。 2. **...

    oracle函数的用法[定义].pdf

    根据描述,我们可以将Oracle SQL中的函数大致分为单记录函数和多值函数,其中单记录函数又分为字符函数和数字函数。以下是对这些函数的详细解释: 1. **ASCII函数**:ASCII函数返回一个字符对应的十进制ASCII码值。...

    Oracle常用函数.docx

    以下是基于给定文件中的部分Oracle常用函数的详细说明: 1. ASCII() 和 CHR() - ASCII() 函数接收一个字符串,返回其第一个字符的ASCII码。ASCII码是一个字符编码标准,将字符与数字对应。例如,ASCII('A')返回65...

    Oracle数据库中单行字符串函数简介

    Oracle数据库中的单行字符串函数是处理和操作字符串数据的关键工具,它们主要用于字符串的组合、转换、查找、截取等操作。下面将详细介绍这些函数的功能和用法。 1. ASCII() 函数:ASCII()函数接收一个字符串作为...

    ORACLE数据库汉字占几个字节问题.pdf

    在上面的示例中,LENGTH 函数返回字符串 '您好' 的字符数量,而 LENGTHB 函数返回字符串 '您好' 的字节数量。 需要注意的是,ORACLE 数据库可以存储字节或字符,例如 CHAR(12 BYTE) 和 CHAR(12 CHAR) 的意义是不同...

    Oracle内置函数.docx

    Oracle内置函数是数据库管理系统Oracle中用于处理数据的基本工具,涵盖了数值处理...Oracle内置函数为数据处理提供了丰富的工具,它们在数据库管理和数据分析中起着至关重要的作用,使用户能够更精确地控制和操作数据。

    Oracle常用函数.pdf

    以下是一些常用的Oracle函数的详细说明: 1. **ASCII()**:此函数用于返回字符串`c1`的第一个字母的ASCII码。ASCII码是一种字符编码标准,用于将字符与数字对应。例如,ASCII码65对应大写字母'A',122对应小写字母'...

Global site tag (gtag.js) - Google Analytics