--1.group by 字段
--分组:统计某个字段的取值,并将取值相同的字段的数据合并成一条。(表结构发生了变化,因为某些列没有显示出来)
-->查询只允许出现分组的字段或聚合函数或常量
--2.如何通过显示查询计划和执行查询计划来做代码分析。(重点)
--3.聚合函数(Aggregation重点)
-->聚合函数忽略空值数据(类似于老师统计班级的平均分数,他会忽略掉缺考学生的成绩)
--4.开窗函数over
-->使用聚合函数后,只能是一行,使用over可以将聚合函数扩展到所有行
-- 开窗函数over的常用方法
-- 1、为每条数据显示聚合信息(聚合函数() over())
-- 2、为每条数据提供分组的聚合函数结果(聚合函数() over(partition by 字段) as 别名)
-- 3、与排名函数一起使用(row_number() over(order by 字段) as 别名)
-->表值构造函数的写法
select
row_number() over(order by stuScore) as 序号,
*,
avg(stuScore) over() as 平均分,
avg(stuScore) over(partition by stuOtherName) as 分组平均分
from
(
values
(1, '张三', 100,'组长'),
(2, '李四', 87, '学干'),
(3, '赵钱', 95, '组长'),
(4, '孙李', 88, '学干')
) as tbl(stuId, stuName, stuScore, stuOtherName);
--5.having
-->where只能直接对数据源进行筛选
-->having对聚合后的数据进行筛选
--6.select
--7.distinct
--8.top
-->获取前几条数据,放在列的前面,常与order by一起使用(因为结果集是没有顺序的)
--9.order by
-->数据库中的数据是没有顺序的
-->使用order by得到有序的结果(使用order by后得到的是游标而非结果集)
--10.union [all]
-->将两个结果简单的拼接起来
--11.select into
select 列1, 列2...,
into 不存在的表名
from 数据源
--12.表值构造函数
select col1,col2,col3
from
(
values(值1), (值2), (值3)
) as 别名(col1,col2,col3)
--13.数学函数
ROUND ( numeric_expression , length [ ,function ] ):返回一个数值,舍入到指定的长度或精度。
FLOOR ( numeric_expression ):返回小于或等于指定数值表达式的最大整数
SIGN 返回符号. 等价于:|x|/x
SQRT(numeric_expression) :返回数值表达式的平方根
CEILING ( numeric_expression):返回大于或等于指定数值表达式的最小整数。
PI
SQUARE(numeric_expression): 返回数值表达式的平方。
POWER(numeric_expression,power): 返回对数值表达式进行幂运算的结果。Power 参数的计算结果必须为整数
RAND ( [ seed ] ) :返回一个介于 0 到 1(不包括 0 和 1)之间的伪随机 float 值。如果未指定 seed,则 SQL Server 数据库引擎随机分配种子值。对于指定的种子值,返回的结果始终相同。
--14.字符串函数
LEN(character_expression):返回字符表达式中的字符数。如果字符串中包含前导空格和尾随空格,则函数会将它们包含在计数内。,对相同的单字节和双字节字符串返回相同的值。
DATALENGTH ( expression ):返回用于表示任何表达式的字节数
LOWER
UPPER
LTRIM
RTRIM
LEFT
RIGHT
SUBSTRING(string,start_position,length):起始位置从1开始
--15.日期函数(为什么可以使用“>=”号对时间字符串进行比较,因为时间存储的其实是数字)
GETDATE
DATEADD (datepart , number , date ):将指定 number 时间间隔(有符号整数)与指定 date 的指定 datepart 相加后,返回date。
DATEDIFF ( datepart , startdate , enddate ):返回指定的 startdate 和 enddate 之间所跨的指定 datepart 边界的计数(带符号的整数)。
DATEPART ( datepart , date ):返回表示指定 date 的指定 datepart 的整数。
--16.类型转换函数
CAST ( expression AS data_type [ ( length ) ] ):默认length=30
CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
SQL函数的使用
最新推荐文章于 2024-09-10 19:37:16 发布