[数据库系统] 四、分组操作符与聚集函数

news2025/1/17 9:04:24

第1关:数据统计(初级)

使用 group by 语句结合聚集函数解决数据统计问题 

数据统计

一般的数据统计关系代数表达式如下:

其中L是属性集。含义是在属性集L上分组,分组后用函数fun运算 ,如

表示按性别sex的不同取值分组,再计算每个不同性别的学生人数。 假设有下面关系,利用上述分组计数统计则能得到: 男 2 女 2

educoder

编程要求

我们已经为你建好了数据库与数据表,并添加了相应的数据内容。 你只需根据右侧提示,完成以下任务:

  • 1.统计 course表中学分数(credit)大于2的课程门数;

  • 2.统计所有专业必修课(BT开头的课程代码)的学分总数。

  • 3.按课程类别统计每个类别课程的门数,如课程代码BT001,BT002都是专业必修课。

本题使用的关系如下:

course(cno,cname,credit) 对应课程代码,课程名称,学分,

其中课程代码前2位代表不同类型的课程,如 BT 代表 专业必修课,XZ 代表专业限选课。

测试说明

测试过程:

  • 本关涉及到的测试文件是 step1_test.sh ,平台将运行用户补全的 step1.sql 文件,得到数据;

  • 将得到的数据与答案比较,判断代码是否正确。

     

    USE test_wyy_db_guet
    GO
    
    SET NOCOUNT ON
    
    -- ********** Begin ********** --
    -- ********** 此处写第一题的SQL语句 ********** --
    select count(cno)
    from course
    where credit>2;
    -- ********** End ********** --
    
    GO
     
    -- ********** Begin ********** --
    -- ********** 此处写第二题的SQL语句 ********** --
    select sum(credit)
    from course
    where cno like 'BT%';
    -- ********** End ********** --
    
    GO
    
     
    -- ********** Begin ********** --
    -- ********** 此处写第三题的SQL语句 ********** --
    select left(cno,2),count(cno)
    from course
    group by left(cno,2);
    -- ********** End ********** --
    
    GO

    结果:

    原数据:

第2关:数据统计初级应用

educoder

本关使用的关系为printer(model,color,type,price)

表示的含义是

model:打印机型号;

color:是否彩色, T 彩色,F 黑白

type:类型,ink-jet 表示喷墨, laser 表示激光;

price:单价

编程要求

  • 1.统计激光彩色打印机有多少种型号;
  • 2.找出最便宜的喷墨打印机价格。
  • 3.找出最贵的激光打印机型号和价格。
USE test_wyy_db_guet
Go

SET NOCOUNT ON


-- ********** Begin ********** --
---------- 第一题----------
select count(model)
from printer
where color='T' and type='laser';
-- ********** End ********** --
GO


-- ********** Begin ********** --
---------- 第二题----------
select min(price)
from printer
where type='ink-jet';
-- ********** End ********** --
GO

-- ********** Begin ********** --
---------- 第三题----------
select model , price
from printer
where price in
(
    select max(price)
    from printer
    where type='laser'
);
-- ********** End ********** --
GO

第3关:数据统计综合应用 

本关使用的关系说明:

product(maker,model,type)

maker:表示生产厂商

model:生产的产品型号

type:产品类型,有pc laptop两种

pc(model,speed,ram,hd,price)

表示型号,速度,内存大小,硬盘大小,价格

laptop(model,speed,ram,hd,screen,price)

表示型号,速度,内存大小,硬盘大小,屏幕大小和价格

编程要求

本题可使用视图V_test(视图已经创建完成,可直接使用,你不需要再次创建视图)

了解视图的详细信息可参考下面的创建视图语句:

create view V_test as
select
product.maker,product.model,product.type,
pc.price,pc.hd,pc.speed
from product join pc
on product.model=pc.model
union
select
product.maker,product.model,product.type,
laptop.price,laptop.hd,laptop.speed 
from product join laptop 
on product.model=laptop.model

1.查询在一种或两种电脑(含PC和laptop)中出现过的硬盘的容量。

2.统计各生产厂商生产的电脑(不区分pc和laptop)的平均处理速度的最大值。

3.统计出各厂商生产价格高于1000的产品数量,不用区分是pc还是laptop

4.格分别统计各厂商生产的pc,laptop的平均价。

V_test:

maker	model	type	price	hd	speed	
--------------------	------------------------------
A	    1001	pc	    2114	250	266
A	    1002	pc	    995	    250	210
A	    1003	pc	    478	    80	130
A	    2004	laptop	1150	120	200
A	    2005	laptop	630	    250	216
A	    2006	laptop	2500	120	200
B	    1005	pc	    630    	250	134
B	    1006	pc	    1049	320	266
B	    2007	laptop	1700	100	183
C	    1007	pc	    510	    320	230
D    	1008	pc	    770    	200	266
D   	1009	pc    	650	    250	250
D	    1010	pc	    959	    250	210
E	    1011	pc	    649	    300	266
E	    1012	pc    	529    	160	180
E    	1039	pc	    449	    80	206
E	    2001	laptop	3672	240	200
E	    2002	laptop	949	    80	173
E	    2003	laptop	478	    80	180
F    	2008	laptop	1428	160	160
F	    2009	laptop	900	    80	160
G	    2010	laptop	2300	250	200
USE test_wyy_db_guet
Go

SET NOCOUNT ON

---------- 第1题 ----------
-- ********** Begin ********** --
select distinct hd
from V_test
group by hd
having count(*)<=2 
;
-- ********** End ********** --

GO

---------- 第2题 ----------
-- ********** Begin ********** --

select max(avgs)
from (
    select maker,avg(speed) as avgs
    from V_test
    group by maker
)b  --这里的结尾的b可以是其他的字母

-- ********** End ********** --

GO

---------- 第3题 ----------
-- ********** Begin ********** --
select maker ,count(model)
from V_test
where price>1000
group by maker;

-- ********** End ********** --

GO
---------- 第4题 ----------
-- ********** Begin ********** --
select maker , type ,avg(price)
from V_test
group by maker,type;
-- ********** End ********** --

GO

 

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Android UI深度理解:Activity UI视图结构

Activity UI视图结构 每个Activity都会获得一个窗口&#xff0c;那就是Window&#xff0c;它用于绘制用户的UI界面 Window是一个抽象类&#xff0c;提供了绘制窗口的一组通用API&#xff0c;PhoneWindow是它的唯一实现类 DecorView是所有应用窗口的根节点。是FrameLayout的子类…

java 生产者消费者问题解决办法

Java的生产者消费者模式是 Java的核心之一&#xff0c;它可以提供很好的性能和扩展性。但是在 Java的生产环境中&#xff0c;生产者消费者模式并不是很稳定&#xff0c;因为如果出现网络问题、程序崩溃等情况&#xff0c;生产者消费者模式可能会不稳定&#xff0c;给业务带来影…

实例七:MATLAB APP design- 灰色预测-G(1,1)

注:该算法主要用来做预测,不需更改调试程序,可以直接导入数据使用。在下面会详细介绍APP制作的过程以及使用方法。 一、灰色预测-G(1,1)的原理解析 1. 生成累加数据 k表示时刻, 表示 t=k 时刻某量的观测值,不妨设 , 将原始数据列记成

工控机AllInOne——篇5,pve安装istoreos

工控机AllInOne——篇5&#xff0c;pve安装istoreos 1、准备 istoreos img镜像 2、镜像解压 3、镜像上传到pve iso 4、虚拟盘挂载 qm importdisk 10X XXX local-lvm其中10X代表是pve虚拟机序号&#xff0c;XXX代表iso文件上传位置 之后将虚拟盘设为sata 5、启动pve虚拟机…

腾讯云轻量8核16G18M服务器带宽CPU系统盘性能测评

腾讯云轻量应用服务器8核16G18M带宽配置&#xff0c;18M公网带宽下载速度峰值可达2304KB/秒&#xff0c;折合2.25M/s&#xff0c;系统盘为270GB SSD盘&#xff0c;3500GB月流量&#xff0c;折合每天116GB流量。腾讯云百科分享腾讯云轻量服务器8核16G18M配置、CPU型号、公网带宽…

全年前装出货超200万台,W/AR HUD赛道进入新竞争周期

作为座舱智能化、体验升级的关键环节&#xff0c;HUD赛道仍处于快速变化周期。 本周&#xff0c;水晶光电宣布&#xff0c;已经正式获得捷豹路虎全球下一代EMA电气化平台多个车型的WHUD和AR HUD定点&#xff0c;后者作为捷豹路虎的全新纯电动平台&#xff0c;预计将于2025年量…

数据可视化第二版-拓展-和鲸网约车分析一等奖作品

文章目录 数据可视化第二版-拓展-网约车分析案例竞赛介绍 1等奖作品-IT从业者张某某的作品结论过程数据和思考数据处理数据探索数据分析方法选择数据分析相关性分析转化率分析分析结论 完单数量分析分析结论 司机数量分析分析结论 时间分析每日订单分析 工作日各时段分析周六日…

redis(5)

需求:防止用户进行暴力破解密码 package com.example.demo;import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; import org.springframework.data.redis.core.HashOperations; import org.sprin…

数据结构-树、森林应用(哈夫曼树)

目录 一、树存储结构 1.1双亲表示法 1.2孩子表示法 *1.3孩子兄弟表示法 * 二、树&#xff0c;森林、二叉树之间的转化 三、树和森林的遍历 3.1树 *3.1.1先根遍历 *3.1.2后根遍历 *3.1.3层次遍历 3.2森林 * 3.2.1先序遍历 *3.2.2中序遍历 *等同关系 四、哈夫曼树和哈夫…

开源音频处理库AudioLDM

环境 windows 10 64bitAudioLDM 0.1.1anaconda with python 3.8nvidia gtx 1070Ti 简介 AudioLDM 是一个开源的音频处理库&#xff0c;它可以用于实现语音识别、语音合成、语音转换等应用&#xff0c;很多 AIGC 大模型都在用它。该库提供了一组音频信号处理算法&#xff0c;包括…

shell脚本知识汇聚之地

shell脚本 shell脚本shell脚本编写变量的定义变量的使用变量值调换引号的使用环境变量输出全局变量只读变量位置变量预定义变量条件判断操作if语句case语句for语句while语句until语句退出循环sleep循环等待时间shift 去除第一个位置变量参数${} $变量的特殊显示方式echo用法 sh…

el-cascader后台给一组id回显可选择的选项列表

根据后台给一组id回显可选择的选项列表 <template><div><el-cascader:key"keyValue"ref"cascader"v-model"pids":props"{ label: name, value: id }":options"options"clearablefilterablechange"handl…

Maven配置阿里云仓库https

2022年开始&#xff0c;阿里云对以前的maven仓库地址进行升级&#xff0c;由原来的http换成https 原来链接&#xff1a; http://maven.aliyun.com/repository/public 现在链接&#xff1a; https://maven.aliyun.com/repository/public maven settings.xml配置 maven settin…

QString的解析与常用功能

QString存储一个16位QChar字符串&#xff0c;其中每个QChar对应一个UTF-16代码单元。(编码值大于65535的Unicode字符使用代理对存储&#xff0c;即两个连续的qchar。) Unicode是一个国际标准&#xff0c;支持目前使用的大多数书写系统。它是US-ASCII (ANSI X3.4-1986)和Latin-1…

盐湖卤水中分离硼的工艺有哪些

锂因其优良的物理化学性质&#xff0c;被认为是“推动世界进步的能源金属”&#xff0c;随着新能源、冶金等行业的快速发展&#xff0c;人们对锂的需求量逐年攀升。然而地壳中锂的含量仅为0.0065%左右&#xff0c;约80%的锂资源蕴含于盐湖卤水中。 盐湖卤水成分复杂&#xff0c…

Redis入门到入土(day03)

Redis的持久化 Redis 是内存数据库&#xff0c;如果不将内存中的数据库状态保存到磁盘&#xff0c;那么一旦服务器进程退出&#xff0c;服务器中的数据库状态也会消失。所以 Redis 提供了持久化功能&#xff01; RDB&#xff08;Redis DataBase&#xff09; 什么是RDB 在指…

HugNLP发布,集成多种NLP任务,可训ChatGPT类模型

HugNLP发布&#xff0c;集成多种NLP任务&#xff0c;可训ChatGPT类模型 作者&#xff1a;王嘉宁 HugNLP——全面统一的NLP框架开源了&#xff01; 近日&#xff0c;华师大HugAILab团队研发了HugNLP框架&#xff0c;这是一个面向研究者和开发者的全面统一的NLP训练框架&#x…

java版企业电子招投标采购系统源代码之系统的首页设计

​​ 功能模块&#xff1a; 待办消息&#xff0c;招标公告&#xff0c;中标公告&#xff0c;信息发布 描述&#xff1a; 全过程数字化采购管理&#xff0c;打造从供应商管理到采购招投标、采购合同、采购执行的全过程数字化管理。通供应商门户具备内外协同的能力&#xff0c;为…

来来来,一起了解下MTK(联发科)

​ https://www.mediatek.com/ ​ 进入MTK官网&#xff0c;可以看到其产品分为七大方向&#xff1a;智能手机、笔记本电脑与平板电脑、家庭娱乐、车用市场、连接与网络技术、定制芯片服务、物联网。这里主要介绍智能手机、连接与网络技术、物联网三大版块。 一、智能手机 智…

使用护眼灯台灯哪个牌子好用来保护眼睛?真正做到护眼台灯品牌

现在的家长很多人觉得家里已经有灯光了&#xff0c;没必要在买台灯。但事实上台灯有很多优点&#xff0c;尤其对于小孩子来说&#xff1a;1.提供更好的光线:台灯能够提供更加明亮的光线&#xff0c;有助于保护眼睛健康。2.提高工作效率:台灯光线舒适可提高工作效率或学习效率。…