当前位置: 首页 > news >正文

巴中学校网站建设衡阳有线宽带网站

巴中学校网站建设,衡阳有线宽带网站,盐城网站开发效果,网站速度诊断 慢一、分组后找出指定序号的数据 【需求】查出每个班级第三个注册入学的学生信息 【表和字段】Student: ID Class Name Registrationtime 【实现SQL】 WITH RankedStudents AS (SELECT ID,Class,Name,Registrationtime,ROW_NUMBER() OVER(PARTITION BY Class ORDER BY Registra…

一、分组后找出指定序号的数据

【需求】查出每个班级第三个注册入学的学生信息
【表和字段】Student: ID Class Name  Registrationtime

【实现SQL】

WITH RankedStudents AS (SELECT ID,Class,Name,Registrationtime,ROW_NUMBER() OVER(PARTITION BY Class ORDER BY Registrationtime) AS RowNum  --根据班级分组,注册时间排序赋序号FROM Student  
)
SELECT ID, Class, Name, Registrationtime
FROM RankedStudents
WHERE RowNum = 3;

【讲解】

ROW_NUMBER() OVER(PARTITION BY Class ORDER BY Registrationtime) AS RowNum

      这是窗口函数 ROW_NUMBER() 的应用。它根据 Class 分区,并按 Registrationtime 升序排列,为每个分区中的行分配一个序号 RowNum,表示在每个班级内按注册时间排序的顺序。以便后面我们选出序号=3的学生。

二、分组后找出指定条件指定序号的数据

【需求】查出每个班级第三个注册入学的男学生信息,如果没有那么多男学生,则取第三个注册入学的学生(无论性别)的信息
【表和字段】Student: ID Class Name  Sex  Registrationtime

【实现SQL】

WITH RankedStudents AS (SELECT ID,Class,Name,Sex,Registrationtime,ROW_NUMBER() OVER(PARTITION BY Class, Sex ORDER BY Registrationtime) AS RowNum,COUNT(CASE WHEN Sex = '男' THEN 1 END) OVER(PARTITION BY Class) AS MaleCount  --按班级分组,COUNT出每个班男学生人数FROM Student
),
ThirdMaleOrThirdStudent AS (SELECT ID,Class,Name,Sex,Registrationtime,RowNum,MaleCount,CASE WHEN MaleCount >= 3 AND Sex = '男' AND RowNum = 3 THEN 1    --男学生多且序号为3则赋Selected序号为1WHEN MaleCount < 3 AND RowNum = 3 THEN 1  --男学生少且存在第三个学生则赋Selected序号为1ELSE 0END AS SelectedFROM RankedStudents
)
SELECT ID, Class, Name, Sex, Registrationtime
FROM ThirdMaleOrThirdStudent
WHERE Selected = 1;--选出Selected序号为1的信息

【讲解】

COUNT(CASE WHEN Sex = '男' THEN 1 END) OVER(PARTITION BY Class) AS MaleCount 
    这是根据 Class 列进行分区计数,计算每个班级中男生的数量,并将结果命名为 MaleCount

另外:

1.第一个临时表 RankedStudents作用是为每个班每个学生分配一个排名,并计算每个班级中男生的总数。
2.第二个临时表 ThirdMaleOrThirdStudent作用是根据特定条件标记第三个男生或第三个学生。
3.最后一个部分是主查询,它从 ThirdMaleOrThirdStudent 中选择符合条件 Selected = 1 的学生信息。
4.CASE WHEN的作用:相当于程序中的IF-ELSE

http://www.yayakq.cn/news/590358/

相关文章:

  • 网赌网站建设多少钱seo的优化原理
  • 青岛网站制作公司排名上海平台网站建设
  • app网站开发方案asp网站水印支除
  • 建设官方网站的请示重庆seo整站优化报价
  • 西宁设计网站网站建设项目策划书
  • 舵落口网站建设在阿里巴巴上做网站有效果吗
  • 永久免费个人网站注册个人网站和企业网站区别
  • 健康门户网站建设大学生网站建设例题答案
  • 中信建设有限责任公司企业资质湘潭企业seo优化哪家好
  • 昆山市网站建设建设摩托车官网报价
  • 网站开发与维护的工资网站建设评审表
  • 网站制作流程图创量广告投放平台
  • 提供服务好的网站制作网站开发项目组成员
  • 天津网站建设渠道网站开发前端技术趋势
  • 企业网站免费建设wordpress 安装教程
  • 合肥网站忧化用什么网站做ppt
  • 提升审美的网站wordpress网站配置文件
  • 郑州站网站安全需做哪些监测
  • 佛山市顺德区建设局网站windows配置wordpress
  • 可以做兼职的网站推荐wordpress长文章自动分页
  • 代做效果图网站python搭建服务器
  • 镜像网站如何做排名雅客网站建设
  • 网站提交百度了经常修改网站seo关键词排名点击工具
  • 顺企网江西网站建设青岛做网站那家好
  • 网站功能模块介绍wordpress 获取插件目录
  • 网站开发甲方需求文档济南建设网站哪里好
  • 邯郸建设局公开网站网站一年的维护费用
  • 国家城乡住房建设部网站首页wordpress好用的主体
  • 东台网站网站建设网站建设与维护招投标书
  • 广州天河区建设网站公司中国企业信息