6-1. 各种各样的函数
函数的种类
- 算数函数
- 字符串函数
- 日期函数
- 转换函数
- 聚合函数
1.1算术函数
数据类型:NUMERIC
是大多数DBMS都支持的一种数据类型。
通过NUMBERIC
(全体位数,小数位数)
1.1.1 ROUND函数
ROUND函数只能使用NUMERIC类型的数据。
四舍五入
1.1.2 绝对值ABS(x)
1.1.3求余MOD(被除数,除数)
1.2 字符串函数
1.2.1 拼接 ||
语法:
字符串||字符串2
注意SQLServer 和MySQL中无法使用||
SQL Server:
是使用+
来进行字符串拼接。
MySQL 是用
CONCAT来完成拼接。
1.2.2 字符串长度 LENGTH
语法:
LENGTH(字符串)
1.2.3 小写转换LOWER
1.2.4 字符串替换 REPLACE
REPLACE(对象字符串,需要替换的字串,替换成什么字符串)
1.2.5 字符串截取 SUBSTRING
SUBSTRING(对象字符串 FROM 截取的起始位置 FOR 截取的字符数)
1.3 日期函数
1.3.1 当前日期
CURRENT_DATE
1.3.2 当前时间
CURRENT_TIME
1.3.3 当前日期和时间
CURRENT_TIMESTAMP
1.3.4 截取日期元素
EXTRACT函数
EXTRACT(日期元素 FROM日期)
使用EXTRACT函数可以截取日期数据中的一部分,例如年、月、小时、分等等。该函数的返回值不是日期,而是数值类型。
例如:
SELECT CURRENT_TIMESTAMP
EXTRACT(YEAR FROM CURRENT_TIMESTAMP)AS year
FROM Da;
日期元素:
YEAR
/MONTH
/DAY
/HOUR
/MINUTE
/SECOND
1.4 CAST类型转换
1.4.1 CAST函数
语法:
CAST (转换前的值 AS 想要转换的数据类型)
例如:
SELECT CAST('0001' AS INTEGER_ AS int_col
FROM STU;
1.4.2 COALESCE 将NULL转换为其他值
COALESCE(数据1,数据2,数据3……)
该函数会返回,可变参数中:座厕开始第1个不是NULL的值。
因为参数个数是可变的,英雌可以根据需要无限增加。
例:
SELECT COALESCE( name ,'noName')
FROM STU;
这样就可以将NULL值转化为其他非NULL值了。