根据用途,函数大致可以分为几下几种。
·算术函数
·字符串函数
·日期函数
·转换函数
·聚合函数
一、算术函数
□ABS函数---绝对值 ABS(数值)
□MOD--求余 MOD(被除数,除数)
注意:SQL server 使用“%”来计算余数
□ROUND--四舍五入 round(对象数值,保留小数的位数)
此外,还有加减乘除。
二、字符串函数
①拼接函数 --||
注意:SQL server 使用“+”来连接字符串。MySQL使用concat函数来完成字符的拼接。
②字符串长度--LENGTH。LENGTH(str)
注意:SQL server使用LEN来计算字符串长度。
③小写转换--LOWER。LOWER(str)
该函数只能怎对英文字母使用。
④大写转换--UPPER
⑤字符串替换--REPLACE
REPLACE(对象字符串,替换前的字符串,替换后的字符串)
⑥字符型的截取 各数据库的字符串截取函数不同。需要特别注意。
□MYSQL--SUBSTRING(对象字符串 from 截取的起始位置 for 截取的字符串数)
截取的起始位置从最左侧开始计算,从1开始。
□ SQL SERVEAR SUBSTRING(对象字符串 ,截取的起始位置 , 截取的字符串数)
□ORACLE、DB2
SUBSTR(对象字符串 ,截取的起始位置 , 截取的字符串数)
三、日期函数
①当前日期--CURRENT_DATE。在DB2中,使用半角空格代替_:CURRENT DATE
②当前时间--CURRENT_TIME。在DB2中,使用半角空格代替_:CURRENT TIME
③当前日期和时间--CURRENT_TIMESTAMP。在DB2中,使用半角空格代替_:CURRENT TIMESTAMP
④截取日期元素--EXTRACT(日期元素 from 日期)、函数的返回值是数值类型。
日期元素包括:YEAR、MONTH、DAY、HOUR、MINUTE、SECOND
例:EXTRACT(YEAR from CURRENT_TIMESTAMP)
注意:SQLserver 无法使用该函数。
四、转换函数
在SQL中,转换主要有两层意思,一是数据类型转换,二是值得转换
①类型转换——cast CAST(转换前的值 as 想要转换的数据类型)
②将NULL转换为其他值——COALESCE
多数DBMS中都提供了特有的COALESCE的简化版函数,如Oracle中的NVL等。