SQL 数据库
引言
本教程系列是根据菜鸟教程所改编
本教程适合已经有基础,仅需要速过的技术人员浏览
如果需要更细教程,请打开下方菜鸟教程网址
菜鸟教程网址:https://www.runoob.com/sql/sql-tutorial.html
目录
- SQL 函数
- SQL avg()
- SQL count()
- SQL first()
- SQL last()
- SQL max()
- SQL min()
- SQL sum()
- SQL group by()
- SQL having
- SQL exists
- SQL ucase()
- SQL lcase()
- SQL mid()
- SQL len()
- SQL round()
- SQL now()
- SQL format()
正文
1. SQL 函数
SQL Aggregate 函数计算从列中取得的值,返回一个单一的值。
Aggregate 函数:
函数 | 释义 |
---|---|
avg() | 返回平均值 |
count() | 返回行数 |
first() | 返回第一个记录的值 |
last() | 返回最后一个记录的值 |
max() | 返回最大值 |
min() | 返回最小值 |
sum() | 返回总和 |
SQL Scalar 函数基于输入值,返回一个单一的值。
Scalar 函数:
函数 | 释义 |
---|---|
ucase() | 将某个字段转换为大写 |
lcase() | 将某个字段转换为小写 |
mid() | 从某个文本字段提取字符,MySql 中使用 |
SubString(字段,1,end) | 从某个文本字段提取字符 |
len() | 返回某个文本字段的长度 |
round() | 对某个数值字段进行指定小数位数的四舍五入 |
now() | 返回当前的系统日期和时间 |
format() | 格式化某个字段的显示方式 |
2. SQL avg()
avg() 函数返回数值列的平均值
语法:
select avg(列名) from 表名;
3. SQL count()
count() 函数返回匹配指定条件的行数。
- count(列名)
函数返回指定列的值的数目(null不计入),语法:select count(列名) from 表名;
- count(*)
函数返回表中的记录数,语法:select count(*) from 表名;
- count(distinct 列名)
函数返回指定列的不同值的数目,语法:select count(distinct 列名) from 表名;
count(distinct) 适用于 ORACLE 和 Microsoft SQL Server,但是无法用于 Microsoft Access。
4. SQL first()
first() 函数返回指定的列中第一个记录的值
MS Access 语法:
select first(列名) from 表名;
SQL server 语法:
select top 1 列名 from 表名 order by 列名 asc;
MySQL 语法:
select 列名 form 表名 order by 列名 asc limit 1;
Oracle 语法:
select 列名 from 表名 order by 列名 asc where rownum <= 1;
5. SQL last()
last() 函数返回指定的列中最后一个纪录的值
MS Access 语法:
select last(列名) from 表名;
SQL server 语法:
select top 1 列名 from 表名 order by 列名 desc;
MySQL 语法:
select 列名 form 表名 order by 列名 desc limit 1;
Oracle 语法:
select 列名 from 表名 order by 列名 desc where rownum <= 1;
6. SQL max()
max() 函数返回指定列的最大值
语法:
select max(列名) from 表名;
7. SQL min()
min() 函数返回指定列的最小值
select min(列名) from 表名;
8. SQL sum()
sum() 函数返回数值列的总户数
语法:
select sum(列名) from 表名;
9. SQL group by()
group by 语句用于结合聚合函数,根据一个或多个列对结果集进行分组
select 列名, 函数(列名) from 表名 where 列名 operator value group by 列名;
10. SQL having
having() 子句可以筛选分组后的各组数据
语法:
select 列名, 函数(列名) from 表名 where 列名 operator value group by 列名 having 函数(列名) operator value;
11. SQL exists
exists 运算符用于判断查询子句是否有记录, 如果有返回true,无返回false。
语法:
select 列名 from 表名 where exits(select 列名 from 表名 where 条件);
12. SQL ucase()
ucase() 函数把字段的值转换为大写
语法:
select ucase(列名) from 表名;
SQL Server 语法:
select upper(列名) from 表名;
13. SQL lcase()
lcase() 函数把字段的值转换为小写
语法:
select lcase(列名) from 表名;
SQL Server 语法:
select lower(列名) from 表名;
14. SQL mid()
mid() 函数用于从文本字段中提取字符
语法:
select mid(列名, 起始位置,提取长度) from 表名;
Oracle 语法:
select substr(列名, 起始位置,提取长度) from 表名;
15. SQL len()
len() 函数返回文本字段中的值长度。
语法:
select len (列名) from 表名;
MySQL语法:
select length(列名) from 表名;
16. SQL round()
round() 函数用于把数值字段舍入为指定的小数位。
语法:
select round(列名,要返回的小数位) from 表名;
17. SQL now()
now() 函数返回当前系统的日期和时间
语法:
select now() from 表名;
18. SQL format()
format() 函数用于对字段的显示进行格式化
语法:
select format ( 列名,格式) from 表名;