oracle瞎记-常用函数

CEIL(n) 该函数用于返回大于等于数字n的最小整数
FLOOR(n) 该函数用于返回小于等于数字n的最大整数
MOD(m,n) 该函数用于取得两个数字相除后的余数(n为0时,则返回结果为m)
POWER(m,n) 该函数用于返回数字m的n次幂
ROUND(n,[m]) 四舍五入(如果省略m,则四舍五入到整数; 如果m是负数,则四舍五入到小数点前m位; 如果m时正数,则四舍五入到小数点后m位)
SIGN(n) 该函数用于检测数字的正负(n小于0,返回-1; n等于0,返回0; n大于0, 返回1)
TRUNC(n,[m]) 该函数用于截取数字(省略m, 则截去n的小数部分; m是正数, 则将n截取至小数点后第m位; 如果m是负数, 则将数字n截取至小数点前面m位)

ASCII(char) 返回字符串首字符的ASCII码
CHR(n) 将ASCII码转换为字符
CONCAT(string1,string2...) 用于链接字符串,与连接符(||)完全相同
INITCAP(char) 该函数用于将字符串中每个单词的首写字符大写,其他字符小写, 单词之间用空格和非字母字符分隔
INSTR(char1,char2[n,[,m]]) 该函数用于取得字串char2,在字符串char1中的位置,n为起始搜索位置,m表出现的次数
LENGTH(char) 返回字符串的长度
LOWER(char) 转换为小写
UPPER(char) 转换为大写
LPAD(char1,n,char2) 该函数用于在字符串char1的左端填充字符串char2,直至字符总长度为n,char2默认为空格;如果char1长度大于n,则该函数返回char1左端的n个字符
RPAD(char1,n,char2) 从右边开始,使用方法与LPAD()相同
LTRIM(char1[,set]) 该函数用于去掉字符串char1左端所包含的set中的任何字符,从左端第一个字符开始匹配,逐一去掉set中出现的字符,当遇到不是set中的字符时终止,并返回剩余字符串
RTRIM(char1[,set]) 从右边开始,使用方法与LTRIM()相同
REPLACE(char, search_string [,replace_string]) 在char中替换search_string为replace_string
SOUNDEX(char) 该函数用于返回字符串的语音表示,可用于比较发音相同的字符串
SUBSTR(char,m,[,n]) 该函数用于取得字符串的子串,其中数字m是字符开始位置,数字n是子串长度。如果m为0,则从首字开始;m时负数,则从尾部开始
TRANSLATE(char,from_string,to_string) 该函数用于将字符串char的字符按照from_string和to_string的对应关系进行转换
SELECT TRANSLATE('9528','123456789','ABCDEFGKI') FROM DUAL -- 结果: IEBK
TRIM(char FROM string) 该函数用于从字符串头部和尾部两端截去特定的字符。char为要截去的字符,string是源字符串

ADD_MONTHS(d,n) 用于返回特定日期时间d之后(或之前)的n个月所对应的日期时间
CURRENT_DATE 返回当前会话时区所对应的日期时间(与sysdate类似)
CURRENT_TIMESTAMP 返回当前会话时区所对应的日期时间
DBTIMEZONE 返回数据库所在时区
EXTRACT 从日期时间值中取得所需要的特定数据(SELECT extract(YEAR FROM sysdate) year FROM dual;)
LAST_DAY(d) 该函数用于返回特定日期所在月份的最后一天
MONTHS_BETWEEN(d1,d2) 该函数用于返回日期d1和d2之间的相差月数
NEXT_DAY(d,char) 返回指定日期后的第一个工作日(由char指定)所对应的日期(SELECT NEXT_DAY(SYSDATE,'星期一') from dual)
SYSDATE 返回当前系统的时间
TO_TIMESTAMP(char[fmt[,'nls_param']]) 将符合特定日期和时间格式的字符串转变为TIMESTAMP类型
TRUNC(d,[fmt]) 该函数用于截断日期时间数据。如果fmt指定年度(YEAR),则结果为本年度的1月1日;如果fmt指定月(MONTH),则结果为本月1日

ASCIISTR(string) 将任意字符集的字符串转变为数据库字符集的ASCII字符串
CAST(expr AS type_name) 将一个内置数据类型或集合类型转变为另一个内置数据类型或集合类型
CHARTOROWID(char) 该函数用于将字符串值转变为ROWID数据类型,单字符串值必须符合ROWID格式
ROWIDTOCHAE(rowid) 该函数将ROWID值转变为VARCHAR2数据类型
ROWIDTONCHAR(rowid) 用于将ROWID值转变为NVARCHAR2数据类型
TO_CHAR(character) 该函数用于将NCHAR,NVARCHAR2,CLOB和NCLOB数据转变为数据库字符集数据。当用于NCHAR,NVARCHAR2和NCLOB类型时,字符串用单引号括起来,前面加上n (如:char(n'中国'))
TO_CHAR(date[,fmt[,nls_param]]) 用于将日期值转变为字符串,fmt用于指定日期格式,nls_param用于指定NLS参数
TO_CHAR(n[,fmt[,nls_param]]) 该函数用于将数字值转变为VARCHAR2数据类型
TO_CLOB(char) 将字符串转变为CLOB类型。当使用NCAHR,NVARCHAR2和NCLOB类型时,字符串需要用单引号括起来,且在前面加上n
TO_DATE(char[,fmt[,nls_param]]) 该函数用于将符合特定日期格式的字符串转变为DATE类型的值
TO_LOB(ling_column) 将LONG或LONG RAW列的数据转变为相应的LOB类型
TO_MULTI_BYTE(char) 用于将单字节字符串转变为多字节字符串
TO_SINGLE_BYTE(char) 用于将多个字节字符集数据转变为单字节字符集
TO_NCHAR(character) 该函数用于将字符串由数据库字符集转变为名族字符集
TO_NCHAR(datetime[,fmt[,nls_param]]) 用于将日期时间值转变为名族字符集
TO_NCHAR(number) 用于将数字值转变为名族字符集的字符串
TO_NCLOB(clob_column|char) 用于将CLOB或字符串转变为NCLOB类型
TO_NUMBER(char[,fmt[,nls_param]]) 该函数用于将符合特定数字格式的字符串值转变为数字
UNISTR(string) 用于将字符串返回相应的UNICODE字符

COALESCE(expr1[,expr2][,expr3]…) 用于返回表达式中第一个NOT NULL表达式的结果
DECODE(expr,search1,result1[,search2, result2,…][,default]) 用于返回匹配特定表达式的结果。如果search1匹配expr,则返回result1;如果search2匹配expr,则返回result2,依次类推;如果没有任何匹配关系,则返回default
EMPTY_BLOB() 用于初始化BLOB变量
EMPTY_CLOB 用于初始化CLOB变量
GREATEST(expr1[,expr2]…) 该函数用于返回列表表达式expr1,expr2…中值最大的一个。在比较之前,expr2等项会被隐含地转换为expr1的数据类型
LEAST(expr1[,expr2]…) 该函数用于返回列表表达式expr1,expr2…中值最小的一个。在比较之前,expr2等项会被隐含地转换为expr1的数据类型
NULLIF(expr1,expr2) 用于比较表达式expr1和expr2。如果二者相等,返回NULL,否则返回expr1
NVL(expr1,expr2) 该函数用于将NULL转变为实际值。如果expr1是NULL,则返回expr2;如果expr1不是NULL,则返回expr1。参数expr1和expr2可以是任意数据类型,但二者数据类型必须要匹配.
NVL2(expr1,expr2,expr3) 用于处理NULL。如果expr1不是NULL,则返回expr2;如果expr1是NULL,则返回expr3。参数expr1可以是任意数据类型,而expr2和expr3可以是除LONG之外的任何数据类型
UID 用于返回当前会话所对应的用户ID号
USERENV([‘ISDBA’]|'[‘LANGUAGE’] |[‘TERMINAL’]|[‘CLIENT_INFO’]) ISDBA:如果用户具有DBA权限,则返回TRUE;否则FALSE
LANGUAGE:返回当前会话的语言,地区和字符集
TERMINAL:返回但前会话所在终端的OS标示符
CLIENT_INFO:返回由包DBMS_APPLICATION_INFO所存储的用户会话信息(最长64字节)
VSIZE(expr) 用于返回ORACLE内部存储expr的实际字节数,如果expr是null,则该函数返回null. 注意,该函数只能在SQL语句中使用

常用分组函数
AVG() 用于进算平均值
COUNT() 用于返回总计行数
GROUP_ID() 用于区分分组结果中的重复行
GROUPING 统计结果是否用到了指定列,0表用到,1表没用到
MAX() 用于取得列或表达式的最大值
MIN() 用于取得列或表达式的最小值
SUM() 用于计算列或表达式的总和
ROLLUP() 在原有分组统计的结果上,产生横向结果小计
CUBE() 在原有分组统计的结果上,产生纵向结果小计
GROUPING SETS 可以合并多个分组统计结果
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值