zoukankan      html  css  js  c++  java
  • oracle length and lengthb

    LENGTH──返回以字符为单位的字符串长度。

    LENGTHB──返回以字节为单位的字符串长度,它和类型定义中的长度是一个概念,比如你定义的varchar2(10)中的10。在不同的数据库,因为字符集的不同,LENGTHB得到的值可能会不一样。比如ZHS16GBK采用两个byte位来定义一个汉字,而UTF8则用3个byte来定义一个汉字。

    笔者的数据库是UTF8,测试得到以下结果。

    SQL> SELECT USERENV('LANGUAGE') FROM DUAL;
     
    USERENV('LANGUAGE')
    ----------------------------------------------------
    AMERICAN_AMERICA.UTF8
    
    SQL> SELECT length('abcd') FROM dual;
     
    LENGTH('ABCD')
    --------------
                 4
     
    SQL> SELECT lengthb('abcd') FROM dual;
     
    LENGTHB('ABCD')
    ---------------
                  4
    
    SQL> SELECT length('新春快乐') FROM dual;
     
            LENGTH('新春快乐')
    ----------------------
                         4
    
    SQL> SELECT lengthb('新春快乐') FROM dual;
     
            LENGTHB('新春快乐')
    -----------------------
                         12

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

    如果有中文,那么LENGTH() != LENGTHB()

    如果没有中文,那么LENGTH() == LENGTHB()

  • 相关阅读:
    VSFTP配置参数详解
    C语言---函数
    ios 学习计划
    读书笔记---金融学一<新国富论>
    读书笔记---人生规划一<斯坦福最受欢迎的人生规划课、像卡耐基一样经营人生、九型人格>
    网络基础
    swift中构造方法和Kvc
    swift中的懒加载
    private的用法
    extension
  • 原文地址:https://www.cnblogs.com/prettymdx/p/3285137.html
Copyright © 2011-2022 走看看