目录
👍前言
这一篇博客,带大家走进Sql Server的函数学习。
👣SQL 常用函数学习
SQL Server有很多的内置函数,可以用来求和,平均值,计数等等。
函数的使用语法:
SELECT function(列) FROM 表;
接下来由我给大家介绍一下Sql Server中常用的函数和它的用法。
👀AVG – 平均值
AVG函数返回所求某列的平均值,NULL;不计算在内。
语法:
SELECT AVG(列名) FROM 表名;
实例:
让我们来求一下"Student"学生表中的所有同学的数学成绩平均值是多少。
select avg(math) 数学成绩平均值 from student;
当然,也可以查询低于平均值学生的信息。
select * from student where math<(select avg(math) 数学成绩平均值 from student);
温馨提示:求平均值函数AVG()所求的列的值必须是int类型,才可以求出来,否则会报错误。
👂COUNT – 汇总函数
COUNT() 函数返回匹配指定条件的行数。
语法:
count()
中可以有不同的语法:
- COUNT(*) :返回表中的记录数。
- COUNT(DISTINCT 列名) :返回指定列的不同值的数目。
- COUNT(列名) :返回指定列的值的数目(NULL 不计入)。
SELECT COUNT(*) FROM 表名;
SELECT COUNT(DISTINCT 列名) FROM 表名;
SELECT COUNT(列名) FROM 表名;
实例:
COUNT(*) :
总共多少条信息。
select count(*) from student;
COUNT(DISTINCT 列名) :
这个是可以求出指定列中不重复的数量。
select count(distinct StuName) from student;
COUNT(列名) :
可以指定列求出指定列的总数。
select count(StuName) from student;
💪MAX – 最大值
MAX
函数返回一列中的最大值。NULL 值不包括在计算中。
语法:
SELECT MAX(列名) FROM 表名;
MIN 和 MAX 也可用于文本列,以获得按字母顺序排列的最高或最低值。
实例:
我们来查询"Student"表中数学成绩最高的是多少?
select max(math) from student;
🦵MIN – 最小值
MIN
函数返回一列中的最小值。NULL 值不包括在计算中。
SELECT MIN(列名) FROM 表名;
实例:
我们来查询"Student"表中数学成绩最低的是多少?
select min(math) 数学成绩 from student;
👓SUM – 求和
SUM
函数返回数值列的总数(总额)。
语法:
SELECT SUM(列名) FROM 表名
实例:
这是求出"Student"表中数学成绩的总和。
select sum(math) 数学成绩 from student
👑UCASE/UPPER – 大写
UCASE/UPPER
函数把字段的值转换为大写。
语法:
select upper(列名) from 表名;
💄LCASE/LOWER – 小写
LCASE/LOWER
函数把字段的值转换为小写。
语法:
select lower(列名) from 表名;
💍LEN/LENGTH – 获取长度
LEN/LENGTH
函数返回文本字段中值的长度。
语法:
select length(列名) from 表名;
实例:
获取"Student"表中学生姓名的长度。
select len(StuName),StuName from student;
💫ROUND – 数值取舍
ROUND
函数用于把数值字段舍入为指定的小数位数。
语法:
select round(列名,精度) from 表名;
实例:
保留2位:
select round(1.1314,2) from student;
select round(1.1351,2) from student;
温馨提示:ROUND
取舍是 四舍五入 的!
取整:
select round(1.1351,0) from student;
select round(1.56,0) from student;
💨NOW/SYSDATE – 当前时间
NOW/SYSDATE
函数返回当前的日期和时间。
语法:
select sysdate from 表名;
实例:
获取当前时间:
select getdate() from student;
温馨提示:如果您在使用 Sql Server 数据库,请使用 getdate()
函数来获得当前的日期时间。
⛔最后
以上就是数据库中的常用函数,大家了解没,要是有不对的地方,请大家指正。