Oracle函数
Posted 李泽阳
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle函数相关的知识,希望对你有一定的参考价值。
Oracle函数
字符函数
大小写控制函数
一:LOWER ()
--全部小写
SELECT LOWER(\'SCOTT\') "Lowercase"
FROM DUAL;
说明:
低返回 char,与所有字母都小写。字符可以是任何数据类型 CHAR,
VARCHAR2、 NCHAR、 NVARCHAR2、 CLOB 或 NCLOB。返回值是相同的数据类型
char。数据库设置基于二进制的映射定义的字符的大小写
为基础的字符集。
二:UPPER()
--全部大写
SELECT UPPER(\'scoot\') "Uppercase"
FROM dual;
说明:
上层返回 char,与所有字母都大写。字符可以是任何数据类型 CHAR,
VARCHAR2、 NCHAR、 NVARCHAR2、 CLOB 或 NCLOB。返回值是相同的数据类型
char。数据库设置基于二进制的映射定义的字符的大小写
为基础的字符集。
三:INITCAP()
--首字母大写
SELECT INITCAP(\'the soap\') "Capitals"
FROM DUAL;
说明:
INITCAP 返回 char,大写,其他字母中每个单词的首字母
小写字母。由空白或不是的字符分隔单词
字母数字。
字符可以是任何数据类型 CHAR、 VARCHAR2、 NCHAR 或 NVARCHAR2。返回
值是相同的数据类型为 char。数据库设置初始字符的大小写
基于二进制的映射定义为基础的字符集。
字符控制函数
一:concat()
--连接
select concat(\'hehe\',\'haha\')hei from dual
说明
CONCAT 返回 char1 与 char2 连接。Char1 和 char2 可以是任意的
数据类型 CHAR、 VARCHAR2、 NCHAR、 NVARCHAR2、 CLOB 或 NCLOB。返回的字符串是在
相同的字符设置为 char1。其数据类型取决于数据类型的
参数。
在串联的两个不同的数据类型,Oracle 数据库返回的数据类型
结果在无损转换。因此,如果其中一个参数是 LOB,然后
返回的值是 LOB。如果其中一个参数是国家数据类型,则
返回的值是一个国家的数据类型。例如︰
■ CONCAT (CLOB,NCLOB) 返回 NCLOB
■ CONCAT (NCLOB、 NCHAR) 返回 NCLOB
■ CONCAT (NCLOB、 CHAR) 返回 NCLOB
■ CONCAT (NCHAR,CLOB) 返回 NCLOB
此函数等同于串联运算符 (|)。
二SUBSTR()
说明
SUBSTR 函数返回字符,字符位置开始部分
substring_length 个字符长。SUBSTR 计算长度使用字符作为
由输入的字符集定义。SUBSTRB 使用字节而不是字符。SUBSTRC
使用完整的 Unicode 字符。SUBSTR2 使用 UCS2 代码点。SUBSTR4 使用 UCS4
代码点。
■ 如果立场是 0,那么它被视为 1。
■ 如果位置是积极,然后从开始到 char Oracle 数据库计数
找到的第一个字符。
■ 如果位置为负数,然后 Oracle 倒推从结尾的字符。
■ 如果省略 substring_length,然后 Oracle 将返回所有字符到末尾
char。如果 substring_length 是小于 1,则 Oracle 返回 null。
字符可以是任何数据类型 CHAR、 VARCHAR2、 NCHAR、 NVARCHAR2、 CLOB 或NCLOB。
例外情况是 SUBSTRC、 SUBSTR2 和 SUBSTR4,不允许字符是
CLOB 或 NCLOB。位置和 substring_length 必须是数据类型数,或
任何数据类型可以隐式转换为数字,并且必须解析为
整数。返回值是作为字符浮点数传递相同的数据类型
作为 SUBSTR 的参数自动转换为整数。
三:length() lengthb()
说明:
长度函数返回的字符长度长度计算长度使用
定义的输入字符的字符设置。LENGTHB 使用而不是字节
个字符。LENGTHC 使用完整的 Unicode 字符。LENGTH2 使用 UCS2 代码
点。LENGTH4 使用 UCS4 代码点。
字符可以是任何数据类型 CHAR、 VARCHAR2、 NCHAR、 NVARCHAR2、 CLOB 或NCLOB。
例外情况是 LENGTHC、 LENGTH2 和 LENGTH4,不允许字符是
CLOB 或 NCLOB。返回值是数字数据类型。如果 char 数据类型 CHAR,然后
长度,包括所有尾随空格。如果字符是 null,则此函数返回 null。
四:INSTR()
说明:
INSTR 函数搜索字符串的子字符串。搜索操作定义为
比较与相同长度的字符串的子字符串的子字符串参数
直到找到一个匹配或没有更多的平等的子字符串左边。每个连续
比较的字符串的子字符串开始一个字符向右 (向前搜索)
或一个字符向左 (向后搜索) 从第一个字符
以前比较的子字符串。如果找到等于子字符串的子字符串,则
该函数返回一个整数,指示这的第一个字符的位置
子字符串。如果找到了没有这样子字符串,则该函数返回零。
■ 位置是一个非零的整数,指示字符串的字符在 Oracle
数据库开始搜索 — — 第一次的第一个字符的位置
要比较的子字符串的子字符串。如果位置为负值,则 Oracle 计数
落后从结尾的字符串,然后从所得向后搜索
位置。
■ 发生是一个整数,指示子字符串在字符串中的哪个匹配项
Oracle 应搜索。发生的值必须为正数。如果发生
大于 1,则数据库不能在第一场比赛,但仍
上文所述,直到比赛比较连续字符串的子字符串,
已发现数发生。
INSTR 接受和返回字符的位置,如所输入的字符集,定义
在位置 1 的字符串的第一个字符。INSTRB 使用而不是字节
个字符。INSTRC 使用完整的 Unicode 字符。INSTR2 使用 UCS2 代码点。
INSTR4 使用 UCS4 代码点。
字符串可以是任何数据类型 CHAR、 VARCHAR2、 NCHAR、 NVARCHAR2、 CLOB或 NCLOB。
例外情况是 INSTRC、 INSTR2 和 INSTR4,不允许字符串
CLOB 或 NCLOB。
子字符串可以是任何数据类型 CHAR、 NCHAR、 NVARCHAR2、 VARCHAR2 CLOB,或
NCLOB。
返回的值是数字数据类型。
位置和发生必须是数据类型数或可以任何数据类型
能隐式转换为数字,并且必须解析为一个整数。默认值
位置和发生,都是 1,意思 Oracle 开始搜索,在第一次
子字符串的第一个匹配的字符串的字符。返回值是相对于
字符串的开始位置,无论位置的值。
五:LPAD() RPAD()
说明:
LPAD 返回 expr1,左填充到长度 n 个字符与字符序列
在 expr2。这个函数是用于格式化输出的查询。
Expr1 和 expr2 都可以是任何数据类型 CHAR,VARCHAR2、 NCHAR、 NVARCHAR2,
CLOB 或 NCLOB。返回的字符串是 VARCHAR2 数据类型,如果 expr1 是字符数据
NVARCHAR2 如果oracle累加分析函数