Java学习笔记-Java基础14(SQL之字符串函数)

1.CHAR和VARCHAR2:都表示字符串数据类型,用来在表中存放字符串信息

    1)CHAR存放定长字符,即存不满补空格;VARCHAR2存放变长字符,存多少占用多少

    2)二者的默认单位是字节,可以指定为字符

        -CHAR(10),等价于CHAR(10 BYTE)

        -CHAR(10 CHAR),20个字节

        -每个英文占用1个字节,中文是2-4个字节(GBK,2个字节;UTF-8,3个字节)

    3)CHAR最大取值为2000字节,VARCHAR2最大取值为4000字节

    4)CHAR可以不指定长度,默认为1;VARCHAR2必须指定长度

2.LONG:VARCHAR2加长版,存放变长字符串,最多达2GB字符串数据,但是LONG有限制

    1)每个表只能有一个LONG型列

    2)不能作为主键

    3)不能建立索引

    4)不能出现在查询语句中

3.CLOB:存放定长或变长字符串,最多达4GB的字符串数据,ORACLE建议开发中使用CLOB替代LONG类型

4.CONCAT和“||”:用于连接字符串


5.DUAL:虚表,没有该表,只为满足语法要求,常用语测试表达式的结果

6.部分字符串函数:

    1)LENGTH(char):用于返回字符串长度


    2)UPPER(char)/LOWER(char)/INITCAP(char):用于将字符串转换为大写/小写/首字母大写形式


    3)TRIM(c2 FROM c1):从c1的前后截去c2;

          LTRIM(c1,c2):从c1的左边截去c2;

          RTRIM(c1,c2):从c1的右边截去c2;

          如果没有c2,就去除空格


4)LPAD/RPAD(c1,n,c2):补位函数,用于在字符串c1的左或右端用c2补足到n位


    5)SUBSTR(char,m[,n]):用于获取字符串的字串,返回char中从m位开始取n个字符。

        -如果m=0,则从首字母开始,如果m为负数,则从尾部开始

        -如果没有设置n,或n的长度超过了char的长度,则取到末尾为止

        -字符串的首位计数是从1开始


    6)INSTR(c1,c2[,n,[m]]):返回子串c2在c1的位置

        -从n的位置开始搜索,没有指定n,从第1个字符开始

        -m用于指定字串的第m次出现次数,如果不指定默认1

        -如果找不到c2,则返回0



猜你喜欢

转载自blog.csdn.net/JustDI0209/article/details/80348759