参考链接:(10条消息) 基础篇:数据库 SQL 入门教程_sql数据库_Lucifer三思而后行的博客-CSDN博客
一、基本语法
SQL 拥有很多可用于计数和计算的内建函数。
SELECT function(列名称) FROM 表名称
二、基本类型
在 SQL 中,基本的函数类型和种类有若干种。函数的基本类型是:
- Aggregate 函数:该函数的操作面向一系列的值,并返回一个单一的值。
- Scalar 函数:该函数的操作面向某个单一的值,并返回基于输入值的一个单一的值。
三、Aggregate函数
函数 | 描述 | 备注 |
---|---|---|
AVG() | 返回某列的平均值 | NULL 值不包括在计算中 |
COUNT() | 返回某列的行数 | COUNT(*) :返回表中的记录数 COUNT(DISTINCT 列名) :返回指定列的不同值的数目 COUNT(列名) :返回指定列的值的数目(NULL 不计入) |
FIRST() | 返回在指定的域中第一个记录的值 | |
LAST() | 返回在指定的域中最后一个记录的值 | |
MAX() | 返回某列的最高值 | 可用于文本列,以获得按字母顺序排列的最高或最低值 |
MIN() | 返回某列的最低值 | |
SUM() | 返回某列的总和 |
四、Scalar函数
函数 | 描述 |
---|---|
UCASE()或 UPPER() | 将某个域转换为大写 |
LCASE()或 LOWER() | 将某个域转换为小写 |
LEN()或 LENGTH() | 返回某个文本域的长度 |
INSTR(列名称,字符) | 返回在某个文本域中指定字符的数值位置 |
LEFT(列名称,字符数) | 返回某个被请求的文本域的左侧部分 |
RIGHT(列名称,字符数) | 返回某个被请求的文本域的右侧部分 |
ROUND(列名称,小数位数) | 对某个数值域进行指定小数位数的四舍五入 |
MID(列名称,开始位置[,字符数]) | 从文本字段中提取字符 |
MOD(x,y) | 返回除法操作的余数 |
FORMAT(列名称,格式) | 改变某个域的显示方式 |
NOW()或 getdate() | 返回当前的系统日期 |
DATEDIFF(d,date1,date2) | 用于执行日期计算 |
五、GROUP BY分组
GROUP BY 语句用于结合Aggregate合计函数,根据一个或多个列对结果集进行分组。
SELECT 列A, function(列B)
FROM 表名称
WHERE 查询条件
GROUP BY 列A
六、HAVING句尾连接
在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。
SELECT 列A, function(列B)
FROM 表名称
WHERE 查询条件
GROUP BY 列A
HAVING function(列B) 查询条件