数据库系统SQL编程-01

article/2025/10/6 11:54:27

目录

一、查询各专业学生的平均成绩(MSSQL)

表结构:

表样例

输出样例:

编译代码: 

二、查询平均成绩最高的前3名同学 

表结构:

表样例

输出样例:

编译代码: 

三、 查询同专业的学生(MSSQL) 

表结构:

表样例

输出样例:

编译代码 :

四、查询选修某两门课程的学生(MSSQL)

表结构:

表样例

输出样例:

编译代码: 

 五、查询S001学生选修而S003学生未选修的课程(MSSQL)

表结构:

表样例

输出样例:

 编译代码:


一、查询各专业学生的平均成绩(MSSQL)

本题目要求编写SQL语句,
统计各专业的学生选课的平均成绩,如果某专业尚未有任何学生选修课程或成绩为空时,平均分计为0。输出结果集按照major表中的mno升序排序。

提示:MSSQLServer 评测SQL语句。

表结构:

定义表结构的SQL语句如下:

-- 专业表
CREATE TABLE major (  mno char(2) NOT NULL,mname nvarchar(20) NOT NULL,PRIMARY KEY (mno)
);
-- 学生表
CREATE TABLE stu (    sno char(4) NOT NULL,sname nvarchar(8) NOT NULL,sex smallint DEFAULT NULL,mno char(2) DEFAULT NULL,birdate datetime DEFAULT NULL,memo ntext,PRIMARY KEY (sno),CONSTRAINT  fk_stu_mno FOREIGN KEY (mno) REFERENCES major (mno)
);
-- 课程表
CREATE TABLE  cou  (  cno  char(4) NOT NULL,cname  nvarchar(30) NOT NULL,credit  smallint DEFAULT NULL,ptime  char(5) DEFAULT NULL,teacher  nvarchar(10) DEFAULT NULL,PRIMARY KEY ( cno )
);
-- 学生选课成绩表
CREATE TABLE  sc  (  sno  char(4) NOT NULL,cno  char(4) NOT NULL,grade  decimal(4,1) DEFAULT NULL,PRIMARY KEY ( sno , cno ),CONSTRAINT  fk_sc_cno  FOREIGN KEY ( cno ) REFERENCES  cou  ( cno ),CONSTRAINT  fk_sc_sno  FOREIGN KEY ( sno ) REFERENCES  stu  ( sno )
);

表样例

上述表结构对应的表样例。例如

major表:

stu表:

sc表:

输出样例:

请在这里给出输出样例。例如:

编译代码: 

select 专业,平均成绩
from 
(select major.mno  mno , max(mname) 专业,avg(grade) 平均成绩
from  major,stu,sc
where major.mno= stu.mno and stu.sno  = sc.sno
group by  major.mno
unionselect mno mno ,mname 专业,0 平均成绩
from major
where  mno not in (select mno from stu)
)t1

二、查询平均成绩最高的前3名同学 

本题目要求编写SQL语句,
查询平均成绩最高的前3名同学的学号,姓名,性别及年龄。

提示:可使用"limit n"语句实现 "top n" 。

表结构:

请在这里写定义表结构的SQL语句。例如:

CREATE TABLE `stu` (`sno` char(4) NOT NULL,`sname` char(8) NOT NULL,`sex` tinyint(1) DEFAULT NULL,`mno` char(2) DEFAULT NULL,`birdate` datetime DEFAULT NULL,`memo` text,PRIMARY KEY (`sno`)
);
CREATE TABLE `sc` (`sno` char(4) NOT NULL,`cno` char(4) NOT NULL,`grade` decimal(6,1) DEFAULT NULL,PRIMARY KEY (`sno`,`cno`),CONSTRAINT `fk_sc_sno` FOREIGN KEY (`sno`) REFERENCES `stu` (`sno`)
);

表样例

请在这里给出上述表结构对应的表样例。例如

``stu```表:

sc表:

输出样例:

请在这里给出输出样例。例如:

编译代码: 

SELECT stu.sno as 学号, stu.sname as 姓名,stu.sex as 性别,year(now())-year(stu.birdate)-1 as 年龄,avg(sc.grade)as 平均成绩
from stu join sc on stu.sno=sc.sno 
GROUP BY sc.sno 
ORDER BY avg(sc.grade) DESC 
limit 3

三、 查询同专业的学生(MSSQL) 

本题目要求编写SQL语句,
检索Student表中与‘张三’在同一个专业的学生记录。

提示:MSSQLServer 评测SQL语句。

表结构:

请在这里写定义表结构的SQL语句。例如:

-- 学生表
CREATE TABLE stu (    sno char(4) NOT NULL,sname nvarchar(8) NOT NULL,sex smallint DEFAULT NULL,mno char(2) DEFAULT NULL,birdate datetime DEFAULT NULL,memo ntext,PRIMARY KEY (sno)
);

表样例

请在这里给出上述表结构对应的表样例。例如

stu表:

输出样例:

请在这里给出输出样例。例如:

编译代码 :

select sno  学号,sname 姓名
from stu
where mno  in (select mno  from stu  where sname=N'张三')  and sname<>N'张三'

四、查询选修某两门课程的学生(MSSQL)

本题目要求编写SQL语句,
检索出 sc表中至少选修了’C001’与’C002’课程的学生学号。

提示:MSSQLServer 评测SQL语句。

表结构:

请在这里写定义表结构的SQL语句。例如:

-- 学生选课成绩表
CREATE TABLE  sc  (  sno  char(4) NOT NULL,  -- 学生学号cno  char(4) NOT NULL,  -- 选修课程号grade  decimal(4,1) DEFAULT NULL,PRIMARY KEY ( sno , cno )
)

表样例

请在这里给出上述表结构对应的表样例。例如

sc表:

输出样例:

请在这里给出输出样例。例如:

编译代码: 

select a.sno '学号' 
from (select * from sc where (cno = 'C001')) a 
inner join 
(select * from sc where (cno = 'C002')) b 
on a.sno = b.sno

五、查询S001学生选修而S003学生未选修的课程(MSSQL)

本题目要求编写SQL语句,
检索出 sc表中学号为S001的学生选修的而S003学号学生未选修的课程号。
注意:查询结果忽略顺序只对比数据。

提示:MSSQLServer 评测SQL语句。

表结构:

定义表结构的SQL语句如:

-- 学生选课成绩表
CREATE TABLE  sc  (  sno  char(4) NOT NULL,  -- 学生学号cno  char(4) NOT NULL,  -- 课程号grade  decimal(4,1) DEFAULT NULL,PRIMARY KEY ( sno , cno )
)

表样例

上述表结构对应的表样例如

sc表:

输出样例:

输出样例如:

 编译代码:

select distinct cno 课程号
from sc 
where cno in (select distinct cno from sc where sno='S001') and cno not in (select cno from sc where sno='S003')


http://chatgpt.dhexx.cn/article/4bwBbgRh.shtml

相关文章

pl/sql编程语言

–pl/sql编程语言 –pl/sql编程语言是对sql语言的扩展&#xff0c;是的sql语言具有过程化编程的特性 –pl/sql编程语言比一般的过程化编程语言&#xff0c;更加灵活高效 –pl/sql编程语言主要用来编写存储过程和存储函数等。 --声明方法,定义变量 --赋值操作可以用 : 也可以使…

SQL编程开发

文章目录 SQL概述SQL分类SQL语言规范 基本查询语句查询全部列查询特定列过滤操作模糊查询排序操作多表查询单行函数组函数group by和having 子查询库和表的操作库的操作表的操作数据类型列的操作 数据处理之增删改事务、约束和分页事务约束分页 安装好MySQL下步就是使用MySQL&a…

SQL编程

10-1 查询学生表所有学生记录 (5 分) 本题目要求编写SQL语句&#xff0c; 检索出stu表中所有学生记录。 提示&#xff1a;请使用SELECT语句作答。 表结构: 定义表结构的SQL语句。如&#xff1a; CREATE TABLE stu(sno char(4) NOT NULL,sname char(8) NOT NULL,sex tinyin…

SQL 编程

SQL Server中存在两种变量局部变量和成员变量&#xff0c;两种变量的特点和其他语言变量特点一样 全局变量&#xff1a;由系统定义和维护由系统定义和维护 变量名前加“” 例 name 就定义了一个全局变量“name” 局部变量&#xff1a;由用户定义和使用&#xff0c;变量…

可编程的SQL是什么样的?

背景 如果你使用传统编程语言&#xff0c;比如Python&#xff0c;那么恭喜你&#xff0c;你可能需要解决大部分你不需要解决的问题&#xff0c;用Python你相当于拿到了零部件&#xff0c;而不是一辆能跑的汽车。你花了大量时间去组装汽车&#xff0c;而不是去操控汽车去抵达自…

SQL编程语言1

1 SQL简介 SQL是一门操作关系型数据库的编程语言 SQL通用语法 SQL语句可以以单行或多行书写&#xff0c;以分号结尾。只有在读取到分号后系统才会默认你已经输入执行语句MySQL数据库的SQL语句不区分大小写&#xff0c;关键字建议使用大写注释 单行注释&#xff1a;-- 注释内…

sql数据库高级编程总结(一)

1、数学函数&#xff1a;操作一个数据&#xff0c;返回一个结果 &#xff08;1&#xff09;取上限 ceiling 如果有一个小数就取大于它的一个最小整数 列如9.5 就会取到 10 select code,name,ceiling(price) from car &#xff08;2&#xff09;取下限 floor 如果有一个小数就…

SQL基础编程

文章目录 一.SQL的环境搭载单机离线环境在线环境 二.SQL的单表操作1.sql基础三步2.sql四则运算3.limit (限制查询结果个数)4.order by&#xff08;排序&#xff09;5.where 综合条件筛选6.SQL常量7.distinct (把结果中重复的行删除)8.函数(1) 聚合函数&#xff1a;sum() ——求…

君正X1000芯片性能和处理器介绍

君正X1000芯片是针对语音识别功能做了专门定制的芯片&#xff0c;可以支持4个MIC&#xff0c;支持远场唤醒&#xff0c;功耗很低&#xff0c;适用于物联网、智能家居、智能音频、智能玩具等产品 。 X1000 芯片功能&#xff1a; 穿戴处理器级低功耗&#xff0c;待机功耗0.2mW&am…

IBM storwize V5000存储基础配置

初始帐号密码 Superuser / passw0rd 设备和系统的基本状态 首先添加配置主机&#xff0c;前提是已经连接好光纤线&#xff0c;配置好光纤交换机 这里我们使用光纤通道 系统应该可以自动识别到端口&#xff0c;主机名可以设置为主机型号或者主机应用名 两个端口完成 配置内部存…

《计算机系统概论》-第5章-习题答案

给定指令ADD、JMP、LEA、NOT&#xff0c;请判断它们分别是操作&#xff08;或运算&#xff09;指令&#xff0c;还是数据搬移指令或控制指令&#xff1f;对每一条指令&#xff0c;进一步列出该指令可以采用的寻址模式。 指令类型寻址模式ADD操作立即数、寄存器2种寻址模式JMP控…

X1000之LCD部分的翻译

1.显示大小可达640x48060Hz&#xff0c;24BBP RGB 8 8 8 RGB(256^3) 2的24次方16777216 2.支持的颜色就是我们上面计算的 3. 8080并行接口 MCU接口方式&#xff08;8080&#xff0c;6800接口&#xff09;与RGB接口主要的区别 4.支持内部DMA操作和寄存器操作&#xff08;可以…

uboot - 配置过程1(分析国产君正的ingenic-linux-kernel3.10.14-x1000-v8.2-20181116\u-boot\mkconfig脚本)

分析uboot的配置过程&#xff08;mkconfig脚本&#xff09; uboot怎么配置&#xff1f;我们在终端上执行make NAME_config时的运行过程解析&#xff01; STEP1: %_config:: unconfig$(MKCONFIG) -A $(:_config)我们执行make *_config时会运行makefile的这两行程序&#xff0c…

Opencv 以指定格式保存图片

将图像保存至本地&#xff0c;以指定的格式&#xff0c;需要用到cv::imwrite()函数 函数原型&#xff1a; bool imwrite(const string& filename, InputArray img, const vector<int>& paramsvector<int>() )参数解释&#xff1a;filename:图像保存路径&…

【OpenCV-Python】教程:1-1 图像读取显示保存

文章目录 目标代码imread接口原型参数 支持的格式 imwrite接口原型参数 imshow接口原型参数 目标 读图片显示图片保存图片 代码 ## 导入库 import cv2 import sys## 读入图片 img cv2.imread("lena.jpg")## 读入失败退出 if img is None:sys.exit("Could not…

44.Linux君正X1000-添加st7789v显示

由于板子LCD旧屏是ili9335型号的,旧屏有时候会断货,如果断货则使用一个st7789v型号的LCD 它们两个屏的区别在于初始化屏的参数不同,引脚都一样,也就是说需要使板子同时支持ili9335型号和st7789v型号 思路: 1.uboot在显示LOG(初始化屏参数)之前,通过命令来读LCD型号,来检测LCD型…

HaaS100硬件规格

硬件配置 类别 参数 CPU 型号 HaaS 1000 架构 Cortex M33 主频 300MHz 片上Flash 16MB 内存 2.5MB SRAM 16MB PSRAM 硬件接口 类别 数量 性能指标 TF 卡槽 1个 最大支持 64GB RS485 1路 波特率支持1200bps ~ 115200bps RS232 1路 波特率最高支…

X1000对于CPU Core的参数解读(MIPS Cache)

各自摘抄整合&#xff0c;大多来自互联网&#xff0c;链接已全部放出来 1.MIPS-Based XBurst cores (up to 1.0GHz) 基于MIPS的XBurst核(最高可达1.0GHz) MIPS架构  XBurst是北京君正针对移动多媒体便携产品推出的一种创新的32位嵌入式CPU技术&#xff0c;它重新定义了32位嵌…

主控芯片成功案例:搭载北京君正X1000芯片,收款计算合二为一

具体硬件方面&#xff0c;商米码利奥Mini搭载了北京君正X1000芯片&#xff0c;该芯片具有性能强、功耗低的特点&#xff0c;主频可以达到1GHz &#xff0c;支持1秒极速启动&#xff0c;内置LPDDR&#xff08;X1000&#xff1a;32MB&#xff0c;X1000E&#xff1a;64MB&#xff…