Oracle——09常用系统内置函数

简介:   to_char();--转换为字符串 to_number();--转换为数值类型 to_date();--转换为日期类型   1、常用数学运算函数 abs(value) : 返回value的绝对值 ceil(value) :返回大于或等于value的最小整数 cos...

 


to_char();--转换为字符串

to_number();--转换为数值类型

to_date();--转换为日期类型

 

1、常用数学运算函数

abs(value) : 返回value的绝对值

ceil(value) :返回大于或等于value的最小整数

cos(value) : 返回value的余弦值

floor(value) : 返回等于或小于value的最大整数

mod(value1,value2) : 返回value1除以value2的余数

power(value,e) : 返回value的e次幂

round(value,precision) : 保留precision位小数对value进行四舍五入

sign(value) : 如果value是正则返回1,是负则返回-1,否则返回0.

sqrt(value) : 返回value的平方根。

trunc(value,precision) : 是一个截取函数,如果precision为正,则往小数点右边截取precision位,为负则往左边截取precision位。

 

2、常用字符串函数

length(value) : 返回value的长度,value可以是字符串、数字或表达式

lower(value) : 把给定字符串value变为小写

upper(value) : 把给定字符串value变为大写

lpad(string,length[,padding]) : 在string左边填充padding,直到string的长度达到length,如果不指定padding,则默认填充空格

rpad(string,length[,padding]) : 在string右边填充padding,知道string的长度达到length,如果不指定padding,则默认填充空格

ltrim(string[,trimValue]) : 从左边删除trimValue,如果不指定trimValue则删除空格

rtrim(string[,trimValue]) : 从右边删除trimValue,如果不指定trimValue则删除空格

string1 || string2 : 连接两个字符串为一个字符串

initcap(string) : 将字符串的首字母大写

replace(String,src,dest) : 将string中的src用dest代替

substr(string,start[,count]) : 从start位置开始在string中截取count个字符,如果没有指定count,则截取到末尾

 

3、统计函数

avg([distinct] columnName) : 返回columnName中所有值的平均值,若使用distinct则返回所有不同的非空值的平均值

count([distinct] value) : 统计记录数,若使用distinct则只统计不同的非空数值。value可以是字段名也可以是表达式

max(columnName) : 返回columnName中的最大值

min(columnName) : 返回columnName中的最小值

sum(columnName) : 返回columnName中各值的总和

 

4、常用日期函数

add_months(date,number) : 返回date之后number个月的日期

last_day(date) : 返回date所在月份的最后一天

months_between(date1,date2) :返回date2减去date1之后的月数

next_day(date,'day') : 返回date后的day所在的日期,其中day表示全称的星期,如Monday

round(date,'format') : 把date四舍五入到指定的format格式

to_char(date,'format') : 将日期date转换为format格式的字符串

to_date(string,'format') : 将字符串string按照format转换成日期形式

to_timestamp(string,'format'):将字符串string按照format转换成时间戳

trunc(date):将日期date的时分秒都设为0

 

另附几个数字跟日期互相转换的自定义函数:

--create function 数字转日期
create or replace function FN_NUMBER_TO_DATE(timeInMillis in number) return date is
  Result date;
begin
  Result := to_date('1970-01-01 00:00:00', 'yyyy-MM-dd hh24:mi:ss') +
                timeInMillis / (24 * 60 * 60 * 1000);
  return(Result);
end FN_NUMBER_TO_DATE;


--create function 取到几天以前的日期
create or replace function FN_DAYS_AGO(dest in date, days in number) return date is
  Result date;
  timeInMillis number;
begin
  timeInMillis := FN_DATE_TO_NUMBER(dest) - days*24*60*60*1000;
  Result := FN_NUMBER_TO_DATE(timeInMillis);
  return(Result);
end FN_DAYS_AGO;


--create function 日期转数字
create or replace function FN_DATE_TO_NUMBER(inDate in date) return number is
  Result number;
begin
  Result := (inDate-to_date('1970-01-01', 'yyyy-MM-dd')) * 24*60*60*1000;
  return(Result);
end FN_DATE_TO_NUMBER;

 

目录
相关文章
|
2月前
|
SQL Oracle 关系型数据库
[Oracle]面试官:你举例几个内置函数,并且说说如何使用内置函数作正则匹配
本文介绍了多种SQL内置函数,包括单行函数、非空判断函数、日期函数和正则表达式相关函数。每种函数都有详细的参数说明和使用示例,帮助读者更好地理解和应用这些函数。文章强调了字符串操作、数值处理、日期计算和正则表达式的使用方法,并提供了丰富的示例代码。作者建议读者通过自测来巩固学习成果。
26 1
[Oracle]面试官:你举例几个内置函数,并且说说如何使用内置函数作正则匹配
|
6月前
|
SQL Oracle 算法
|
6月前
|
SQL Oracle 关系型数据库
|
6月前
|
SQL Oracle 关系型数据库
Oracle|内置函数之INSTR
【7月更文挑战第5天】
|
6月前
|
Oracle 关系型数据库 数据挖掘
|
7月前
|
Oracle 关系型数据库 Java
实时计算 Flink版产品使用问题之如何实现Oracle到其他系统的实时同步
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
6月前
|
Oracle 关系型数据库 数据挖掘
|
7月前
|
存储 Oracle NoSQL
Oracle中decode函数详解
Oracle中decode函数详解
|
7月前
|
Oracle 关系型数据库 大数据
oracle递归函数
oracle递归函数
|
8月前
|
Oracle 关系型数据库 Unix
SAP系统拷贝 UNIX + Oracle
SAP系统拷贝 UNIX + Oracle
64 1

推荐镜像

更多