oracle部分函数

来源:互联网 发布:淘宝上怎么买定额发票 编辑:程序博客网 时间:2024/06/02 06:41

ceil(n):取大于等于数值n的最小整数
floor(n):取小于等于数值n的最大整数
exp(n):返回e(2.71828183)的number次幂
ln(n):返回输入值的自然对数
log(base,number):返回以base为底,输入值number的对数
mod(a,b):返回a%b的结果
power(a,b):返回a的b次方
sqrt(n):开平方根
[for number]round(a)/round(a,b):一个参数时精度默认四舍五入到个位,两个参数为a四舍五入到小数点后b位,b可为负数
[for datetime]round(DATE,FORMAT):将输入日期四舍五入到第二个参数指定的形式
[for number]trunc(a)/trunc(a,b):一个参数时精度默认截断到个位,两个参数为a截断到小数点后b位,b可为负数
[for datetime]trunc:可一个参数,也可两个参数,返回的是日期,具体百度
sign(n):取数字n的符号,大于0返回1,小于0返回-1,等于0返回0(n可以是表达式,(n-200))
chr():将ASCII转换为字符
ascii():将字符转换为ASCII
concat(a,b):将a和b两个字符串连接起来,且只能两个字符串,“||”可以连接两个及以上字符串
initcap(string):将每个单词的第一个字母大写,其它字母变为小写返回
lower(string):将string中所有字母转换为小写
upper(string):将string中所有字母转换为大写
lpad(string,length,a):从左边开始填充若干a字符到string字符串中,返回长度为length的新串,如果这个length比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的length个字符;
rpad(string,length,a):从右边开始填充若干a字符到string字符串中,返回长度为length的新串,如果这个length比原字符串的长度要短,rpad函数将会把字符串截取成从左到右的length个字符;
trim(string)/trim(单个字符 from string):1.将字符串首尾两端的空格去掉 ,2.将字符串首尾指定字符删除
ltrim(string)/ltrim(string1,string2):一个参数时,该函数作用是去掉字符串左端空格。两个参数时是从string1的左端开始向右去掉出现在string2的字符,直到遇到不在string2的字符时停止。
rtrim(string)/rtrim(string1,string2):一个参数时,该函数作用是去掉字符串右端空格。两个参数时是从string1的右端开始向左去掉出现在string2的字符,直到遇到不在string2的字符时停止。
replace(string1,string2,string3):将出现在string1中的所有string2字符串替换为string3。
translate(string1,string2,string3):将(所有出现的)string2中的每个字符替换为string3中的相应字符(按字节),若string2长于string3,则string1中string2没有对应的字符将全部删除。
substr(string,pos)/substr(string,pos,length):两个参数时是返回从string字符串pos位置到末尾截取的字符串。三个参数时是返回从string字符串pos位置开始截取length长度的字符串。
instr(string1,string2[,start_position[,nth_appearence]]):string1:要在此字符串中查找。string2:要在string1中查找的字符串。start_position:从string1开始查找的位置。可选,默认为1 ,正数时,从左到右检索,负数时,从右到左检索。nth_appearence:查找第几次出现string2。可选,默认为1,不能为负。如果没有查找到,返回0。后两个参数可省。
length(string):返回string的字符长度
lengthb(string):返回string的字节长度
add_months((times,months):这个函数用于计算在时间times之后months个月后的时间值,要是months的值为负数的话就是在这个时间点之间的时间值(这个时间减去months个月)。
extract(values from datetime):从一个time类型中截取时间,也可获取两个日期之间的具体时间间隔,values可以为year,month,day,hour,minute,
但当需要获得两个日期之间的具体时间间隔和使用hour、monute时,时间得是timestamp类型
last_day(datetime):返回指定日期所在月份的最后一天
next_day(datetime,values):values可以为数字1-7,也可为星期一至星期日。返回从datetime日期起,到下一个values的日期
months_between(datetime1,datetime2):返回两个日期之间的月份数,如果两个日期月份内天数相同,或者都是某个月的最后一天,返回一个整数,否则,返回数值带小数,以每天1/31月来计算月中剩 余天数。如果日期1比日期2小,返回值为负数。
sysdate:查询当前日期时间
greatest(expr_1, expr_2, …expr_n):返回其中的最大值,其类型可能有多种,可用于比较同一元组的属性
least(expr_1, expr_2, …expr_n):返回其中的最小值,其类型可能有多种,可用于比较同一元组的属性
[for datetime]to_char(datetime,格式):将日期转换为指定格式的字符串
[for number]to_char(number,格式):将数字转换为指定格式的字符串,格式详情见文档
to_date(string,格式):将string转换为指定格式的日期时间
to_number(varchar2 or char,’format model’):将字符串转换为指定格式的数字,格式详情见文档
decode(条件,值1,返回值1,值2,返回值2,…值n,返回值n,缺省值):当条件满足某个值n,就返回返回值n
coalesce(表达式1,表达式2,…,表达式n):n>=2,此表达式的功能为返回第一个不为空的表达式,如果都为空则返回空值。注意:所有表达式必须为同一类型或者能转换成同一类型。
nullif(expr1, expr2):相等返回NULL,不等返回expr1
nvl(expr1, expr2):expr1为NULL,返回expr2;不为NULL,返回expr1。注意两者的类型要一致
nvl2(expr1, expr2, expr3):expr1不为NULL,返回expr2;为NULL,返回expr3。
uid:返回一个唯一标识登录数据库的用户的整数
user:返回登录数据库的用户的用户名,通常和uid一起区分用户
avg:求平均值
count:统计查询结果有几条记录
max:求最大值
min:求最小值
sum:求和
rank:计算一组值的排名,返回数字类型。排名可能是不连续。如果有5人,其中有2个人排名第一,则rank返回的排名结果为:1 1 3 4 5。
dense_rank:计算一组值的排名,该排名是连续整数从1开始。如果有5人,其中有2个人排名第一,则rank返回的排名结果为:1 1 2 3 4。
row_number:当碰到相同数据时,排名按照记录集中记录的顺序依次递增

原创粉丝点击