什么是网站及其制作步骤wordpress静态文件放到cdn
web/
2025/10/2 22:28:59/
文章来源:
什么是网站及其制作步骤,wordpress静态文件放到cdn,找产品代理去哪个网站,网站 攻击 刷流量目录
需求
范例运行环境
表及视图样本设计
数据统计实现
小结 需求
假设有一课程项目#xff0c;我们需要统计该项目中的课件数量#xff0c;并提取课程信息#xff0c;如课程标题名称、排序号等#xff0c;如果使用 GROUP BY 聚合函数#xff0c;则只能统计返回课件…
目录
需求
范例运行环境
表及视图样本设计
数据统计实现
小结 需求
假设有一课程项目我们需要统计该项目中的课件数量并提取课程信息如课程标题名称、排序号等如果使用 GROUP BY 聚合函数则只能统计返回课件项目及对应的课件数量一条记录无法显示明细信息对于终端想要进行输出的话此时 partition by 就派上用场了。
输出如下图 在管理心理学项目里包括若干课程我们将根据排序号进行分类输出显示课程的明细内容并继续其它业务操作。
范例运行环境
操作系统 Windows Server 2019 DataCenter
数据库Microsoft SQL Server 2016
表及视图样本设计
主表 [ms_project_ep] 项目课程明细表设计如下
序号字段名类型说明备注1ciduniqueidentifier唯一标识2project_ciduniqueidentifier所属项目ID对应项目表3lession_cidtinyint所属课程ID对应课程表4sortidint排序号总排序号
查询分析器结果数据显示如下图 select cid,project_cid,lession_cid,sortid
from ms_project_ep
order by project_cid,sortid
如图我们对项目ID、总排序号进行排序。
数据统计实现
假设统计视图可查询课程项目ID、课程ID、排序号和课程数 统计表设计如下
序号字段名类型说明备注1project_ciduniqueidentifier项目ID2lession_ciduniqueidentifier课程ID3lcountint课程总数通过项目ID进行分区4sortidint排序号每分区排序号从1开始
查询分析器结果数据显示如下图 如图我们看到查询结果按项目ID进行分区并统计课程数
如项目ID:7CF46B88-0B4D-49A0-A0D8-08B9AF064AC5包含了1个课程
项目ID:EE8AFC3F-5E82-46FA-B81E-10F7F06F61C8包含了122个课程
并且每一个分区提取排序号从1开始。
SQL 语句如下
select project_cid,lession_cid,
count(lession_cid) over (partition by project_cid order by project_cid) as lcount,
sortid
from ms_project_ep
order by project_cid,sortid
关键说明见下表
序号关键语句说明1 count(lession_cid) over (partition by project_cid order by project_cid) as lcount partition by project_cid order by project_cid按项目ID分区并排序 使用count函数统计课程数 小结
partition by 的聚合统计和使用还有很多种如下表
序号统计项说明1row_number()记录总排序号2rank()排序有并列则按总数递增如两个第1后是第33dense_rank()排序有并列则按上一数值递增如两个第1后是第24count(字段名)求个数5max(字段名)求最大值6min(这段名)求最小值7sum(字段名)求和8avg(字段名)求平均值9first_value(字段名)求第一个值10last_value(字段名)求最后一个值11lag(字段名[行数]) 取指定列将分区列的数据后错n行行数不是必选项默认为0即不错行 12lead(字段名[行数])取指定列将分区列的数据前错n行行数不是必选项默认为0即不错行
更多学习还请参阅https://learn.microsoft.com/zh-cn/sql/t-sql/functions/avg-transact-sql?viewsql-server-ver16redirectedfromMSDN
至此 partition by 的使用我们就介绍到这里具体使用中我们还需要灵活掌握。对结果数据的前端输出这里不再详述需要根据数据的结构以满足我们的设计输出。
感谢您的阅读希望本文能够对您有所帮助。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/85859.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!