本章介绍了数据库中常用的函数,包括数值函数、字符函数、日期函数、转换函数等,为后续学习更复杂的查询语句做好铺垫。
1. 数值函数
四舍五入、整数函数、常用计算(取绝对值、取平方等)、三角函数。
1. 四舍五入
格式:ROUND(n[,m])
注意:解释一下 m 参数。 当m省略时,默认值为0,即四舍五入; m>0表示四舍五入到小数点后m位,m>0表示四舍五入到小数点前m位。
SQL> 来自对偶的 round(43.96),round(43.96,1),round(43.96,-1);
-> 回合(43.96) 回合(43.96,1) 回合(43.96,-1)
--------------- --------------- ---------------
44 44.0 40
2.舍入功能
格式:CEIL(n) 向上舍入
格式:FLOOR(n) 向下取整
SQL> ceil(12.3),floor(12.3) 来自对偶;
-> 天花板(12.3) 地板(12.3)
-------- ----------
13 12
3.常用计算
格式:ABS(n)绝对值函数
SQL>来自双的abs(12.3),abs(-12.3),abs(0);
->ABS(12.3) ABS(-12.3) ABS(0)
--------- ---------- ---------
12.3 12.3 0
格式:MOD(m,n) 余数函数,返回余数,其中 m 是被除数,n 是除数。
SQL> mod (6,2) 来自对偶;
格式:POWER(m,n) 返回 m 的 n 次方 mn
格式:SQRT(n) 返回 n 的算术平方根
格式:SIN(n)、ASIN(n)、COS(n)、ACOS(n)、TAN(n)、ATAN(n) 返回 n(rad) 的三角函数值
2.字符功能
1.大小写转换功能
格式:UPPER(字符)、LOWER(字符)、(字符)
注意:将字符char分别设为大写、小写、首字母大写。
SQL> upper(''),lower(''),('') from Dual;
-> UPPE 低 INI
----- ------ --------
注:大小写抓取功能对数据库中的字段进行统一处理,如实现不区分大小写的功能。
2.获取子串函数
格式:(char,[m[,n]])
注:char为源字符串,m为子字符串的起始位置,n为截取子字符串的位数。 m可以省略,表示从m截取到字符串末尾; 当m为0时,表示从字符串的第一个字母开始截取; 当m为负值时,表示从字符串末尾截取。
获取字符串长度函数
格式:(字符)
SQL> ('') 来自对偶;
3.字符串连接函数
格式:(字符1,字符2)
SQL> ('','') from Dual;
SQL> ''||'' 来自对偶;
删除子串函数
格式:TRIM(c2 来自 c1)
注:表示从c1字符串中去掉c2字符串
SQL> 修剪('o' from '');
格式:LTRIM[c1,[c2]]
注意:从c1的头部删除第一个c2子串
SQL> ltrim('aba','a') from Dual;
->LTRIM
------
巴
格式:RTRIM[c1,[c2]]
注意:删除c1末尾的第一个c2子字符串
格式:TRIM(c1)
注:表示去掉字符串c1开头和结尾的空格
4. 替换功能
格式:(字符,[,])
注:char是要替换的父字符串、要替换的字符串、要替换的字符串。 默认值为空格。
SQL> ('', 'o', 'O')from 双;
3.日期功能
1.系统时间
格式:
注意:SQL中日期的默认格式为DD-MON-RR(日-月-年),如20-2月-20
2.日期运算功能
格式:(日期,i)
SQL> (,1),(,-1) 来自对偶;
注意:返回添加到指定日期的月份。 i可以是任意整数(输入小数会自动四舍五入,输入负数会减去对应月份)
格式:(日期,字符)
SQL> (,'星期一') from Dual;
注:返回系统日期下周一的日期
格式:(日期)
注:返回日期所在月份的最后一天
格式:(日期1,日期2)
注意:返回date1和date2之间的月份(十进制形式)
格式:(日期自 )
SQL>(年份来自)来自双;
注:返回日期的年、月、日,同时返回时间戳的时、分等信息。