SQL,HQL刷题,尚硅谷

目录

相关表数据:

题目及思路解析:

汇总分析

1、查询编号为“02”的课程的总成绩

2、查询参加考试的学生个数

分组

1、查询各科成绩最高和最低的分,以如下的形式显示:课程号,最高分,最低分

2、查询每门课程有多少学生参加了考试(有考试成绩)

3、查询男生、女生人数

总结归纳: 

知识补充:


相关表数据:

1、Score_info

2、Student_info

题目及思路解析:

汇总分析

1、查询编号为“02”的课程的总成绩
   selectsum(score) score_sumfrom score_infowhere  course_id='02'group by course_id;

结果: 

 

主要考察聚合函数与分组聚合使用 

2、查询参加考试的学生个数

补充说明:在score_info表中score 无null数据,即只统计了有分数的学生成绩

selectcount(distinct stu_id) stu_num
from score_info;

结果: 

 

这里注意去重,因为一个学生可能参加多门课程考试 

分组

1、查询各科成绩最高和最低的分,以如下的形式显示:课程号,最高分,最低分
selectcourse_id,max(score) max_score,min(score) min_score
from score_info
group by course_id;

结果: 

主要考察分组聚合的使用,以course_id进行分组,再利用聚合函数获取最大值与最小值 

2、查询每门课程有多少学生参加了考试(有考试成绩)
selectcourse_id,count(distinct stu_id) stu_num
from score_info
group by course_id;

 结果:

这题与上面第2题差不多,主要需要对每门课程进行分组 

3、查询男生、女生人数
selectgender,count(distinct stu_id) count
from student_info
group by gender;

结果:

 

简单的分组聚合操作 

总结归纳: 

这几道题主要简单考察聚合函数的使用(count,max,min)与分组聚合的使用(group by)

知识补充:

·聚合函数,即将数据聚合在一起进行计算的函数,既然是函数自然有输入与输出

一般输入数据有多行,输出是经计算汇总的一个结果

1、count与sum联系区别

count(*),表示统计所有数,包含null值*相当于传入表中全部列

count(某列),表示该列一共有多少行,不包含null值

sum(),求和,不包含null

二者可理解为,count求行数,sum求行的值

另外:

在hive 中count(*)与count(1(2,3等))结果都一样,底层执行也一样

2、min&max

max(),求最大值,不包含null,除非所有值都是null;

min(),求最小值,不包含null,除非所有值都是null;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/455848.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

opensuse安装百度Linux输入法

前言 Linux下有输入法,拼音,百度的都有,但是用起来总感觉不如在windows下与安卓中顺手。 目前搜狗与百度都出了Linux的输入法,但是没有针对OpenSUSE的,只有ubuntu/deepin/UOS的安装包。 本文主要讲的如何把百度Linux输…

React 实现表单组件

表单是html的基础元素,接下来我会用React实现一个表单组件。支持包括输入状态管理,表单验证,错误信息展示,表单提交,动态表单元素等功能。 数据状态 表单元素的输入状态管理,可以基于react state 实现。 …

synchronized内部工作原理

作者简介: zoro-1,目前大二,正在学习Java,数据结构,javaee等 作者主页: zoro-1的主页 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 synchronized内部工作原理 syn…

低代码,流行的软件开发方式

低代码风头正紧,也是最近一段时间跟云原生一起被热捧,不管你是做后端开发、还是前端设计、销售、售前,如果你没接触过低代码你都不好意思说自己在软件领域工作,这篇文章以我的角度聊聊低代码是什么、以什么样的方式进行开发、及低…

十分钟掌握前端获取实时数据的三种主流方式

前端获取实时数据的三种主流方式 本文聊聊前端获取实时数据的三种主要方式。想象一下,我们在网上购物时,经常能看到最新的优惠信息弹出,或者在社交媒体上看到朋友的最新动态更新。这些都是因为后端在默默地向我们的页面推送了最新的消息。那…

SpringBoot集成axis发布WebService服务

文章目录 1、使用maven-web项目生成server-config.wsdd文件1.1、新建maven-web项目1.1.1、新建项目1.1.2、添加依赖 1.2、编写服务接口和实现类1.2.1、OrderService接口1.2.2、OrderServiceImpl实现类 1.3、配置deploy.wsdd文件deploy.wsdd文件 1.4、配置tomcat1.4.1、配置tomc…

SaperaCamExpert(相机专家)中文使用指南

参考:SaperaCamExpert中文使用指南.PDF 文章目录 软件介绍安装首次打开资源占用率功能主界面布局菜单栏FileViewPre-Processing:预处理 Tools: 快捷键:新建;打开;保存;帮助Device窗体属性树图像…

使用 git 上传文件时,运行 命令 git pull origin 时未成功,出现报错信息

项目场景: 背景: 使用 git 上传文件时,运行 命令 git pull origin 时未成功,出现报错信息 问题描述 问题: $ git pull origin print --allow-unrelated-histories error: Pulling is not possible because you hav…

Python轴承故障诊断入门教学

目录 往期精彩内容: 1 工作室实验平台介绍 2 轴承故障诊断教程—数据集 3 轴承故障诊断教程—算法模型 3.1 振动分析方法 3.2 频域特征提取 3.3 时域特征提取 3.4 模型基础的机器学习方法 3.5 深度学习方法 3.6 时频域融合方法 3.7 信号重构方法 3.8 基…

亚马逊认证考试系列 - 知识点 - 安全组介绍

第一部分:AWS简介 Amazon Web Services(AWS)是全球领先的云计算服务提供商,为个人、企业和政府机构提供广泛的云服务解决方案。AWS的服务包括计算、存储、数据库、分析、机器学习、人工智能、物联网、安全和企业应用等领域。AW…

【Kotlin】Kotlin环境搭建

1 前言 Kotlin 是一种现代但已经成熟的编程语言,由 JetBrains 公司于 2011 年设计和开发,并在 2012 年开源,在 2016 年发布 v1.0 版本。在 2017 年,Google 宣布 Kotlin 正式成为 Android 开发语言,这进一步推动了 Kotl…

电机控制系列模块解析(第七篇)—— V/F

最近有上传一些入门的免积分的资料,方便大家上手进行仿真分析。注意查收。还在继续更新中。继续回到咱们的电机控制系列模块解析(第七篇)—— V/F 观测器后续咱们再继续更新,而且最近学术界和工业界对各类位置观测器都做了一些实…