按学号和姓名进行查询c语言,数据库实验4 数据查询(答案)
数据库技术与应用实验 实验4 数据查询
实验4 数据查询 学号:18103317 专业:电子信息工程
一、实验内容和步骤
1.在studentsdb数据库中,使用下列SQL语句将输出什么?并说明语句中使用函数所实现的功能。
(1)SELECT COUNT(*) FROM 成绩表
(2) SELECT SUBSTRING(姓名,1,2) FROM 学生表
(3)SELECT UPPER(‘kelly’) (小写字母->大写字母) (4)SEIECT Replicate(‘kelly’,3) (将“kelly”重复3次) (5) SELECT SQRT(分数) FROM 成绩表 WHERE 分数>=85 (SQRT()开根号) (6)SELECT 2,3,POWER(2,3) (乘方,即23) (7)SELECT YEAR(GETDATE()),MONTH(GETDATE()),DAY(GETDATE())
2.在studentsdb数据库中使用SELECT语句进行基本查询。 (1)在学生表中,查询每个学生的学号、姓名、出生日期信息。 (2)查询学号为0002的学生的姓名和家庭住址。 (3)找出所有男同学的学号和姓名。 3.使用SELECT语句进行条件查询
(1)在成绩表中查找分数在80~90范围内的学生的学号和分数。 (2)在成绩表中查询课程编号为C003的学生的平均分。
SELECT AVG(分数) FROM 成绩表 WHERE 课程编号='C003' (3)在成绩表中查询学习各门课程的人数。
SELECT COUNT(*) FROM 成绩表 GROUP BY 课程编号
南京师范大学中北学院
1
数据库技术与应用实验 实验4 数据查询
(4)将学生按出生日期由大到小排序。
SELECT * FROM 学生表 ORDER BY 出生年月 DESC (5)查询所有姓“张”的学生的学号和姓名。
SELECT * FROM 学生表 WHERE 姓名 LIKE '张%' 4.嵌套查询
(1)在学生表中查找与“刘卫平”性别相同的所有学生的姓名、出生日期。 SELECT 姓名,出生年月 FROM 学生表
WHERE 性别= (SELECT 性别
FROM 学生表 WHERE 姓名='刘卫平')
(2)使用IN子查询查找所修课程编号为C002、C005的学生学号、姓名、性别。 SELECT 学号,姓名,性别 FROM 学生表
WHERE 学生表.学号 IN (SELECT 学号 FROM 成绩表
WHERE 课程编号 IN('C002','C005'))
(3)列出学号为0001的学生的分数比0002号的学生的最低分数高的课程编号和分数。
SELECT 课程编号,分数 FROM 成绩表
WHERE 学号='0001'AND 分数>ANY (SELECT 分数
FROM 成绩表 WHERE 学号='0002') (4)列出学号为0001的学生的分数比学号为0002的学生的最高成绩还要高的课程编号和分数。
SELECT 课程编号,分数 FROM 成绩表
WHERE 学号='0001'AND 分数>(SELECT MAX(分数)
FROM 成绩表 WHERE 学号='0002')
南京师范大学中北学院 2
数据库技术与应用实验 实验4 数据查询
5.多表查询
(1)查询分数在80~90范围内的学生的学号、姓名、分数。 SELECT 学生表.学号,姓名,分数 FROM 学生表,成绩表
WHERE 学生表.学号=成绩表.学号 AND 分数 BETWEEN 80 AND 90 (2)查询学习“C语言程序设计”课程的学生的学号、姓名、分数。 SELECT 学生表.学号,姓名,分数
FROM 学生表 INNER JOIN 成绩表 ON 学生表.学号=成绩表.学号 INNER JOIN 课程表 ON 课程表.课程编号=成绩表.课程编号 WHERE 课程表.课程名称='C语言程序设计'
(3)查询所有男同学的选课情况,要求列出学号、姓名、课程名称、分数。 SELECT 学生表.学号,姓名,课程名称,分数
FROM 学生表 INNER JOIN 成绩表 ON 学生表.学号=成绩表.学号 INNER JOIN 课程表 ON 课程表.课程编号=成绩表.课程编号 WHERE 学生表.性别='男'
(4)查询各门课程的最高成绩,要求列出课程编号、课程名称、分数。 SELECT b.课程编号,c.课程名称,MAX(b.分数)AS 最高分
FROM 成绩表 b INNER JOIN 课程表 c ON b.课程编号=c.课程编号 GROUP BY b.课程编号,c.课程名称
(5)查询所有学生的总成绩,要求列出学号、姓名、总成绩。 SELECT b.学号,姓名,SUM(b.分数)AS 最高分
FROM 学生表 a LEFT JOIN 成绩表 b ON a.学号=b.学号 GROUP BY b.学号,a.姓名 提示:使用左外连接。
(6)查询所有课程的选修情况,要求列出课程编号、课程名称、选修人数。 SELECT b.课程编号,a.课程名称,COUNT(b.课程编号) AS 选修人数 FROM 课程表 a RIGHT JOIN 成绩表 b ON a.课程编号=b.课程编号 GROUP BY b.课程编号,a.课程名称 提示:使用右外连接。
南京师范大学中北学院 3
数据库技术与应用实验 实验4 数据查询
(7)查询所有没有选修课C002的学生信息,返回结果包括学号、姓名、性别。 SELECT 学号,姓名,性别 FROM 学生表
WHERE NOT EXISTS (SELECT * FROM 成绩表
WHERE 课程编号='C002' AND 学号=学生表.学号)
提示:使用条件运算符EXISTS。
(8)在学生表和成绩表之间实现交叉连接。 SELECT 学生表.学号,姓名,成绩表.课程编号,分数 FROM 学生表 CROSS JOIN 成绩表
(9)查询每个学生的所选课程的成绩,并列出学号生成分组汇总行(总成绩)和明细行(各课成绩)。
SELECT 学号,课程编号,分数 FROM 成绩表 ORDER BY 学号
COMPUTE SUM(分数)BY 学号
提示:使用SELECT语句的COMPUTE选项。
南京师范大学中北学院 4
按学号和姓名进行查询c语言,数据库实验4 数据查询(答案)相关推荐
- 数据库实验报告 数据查询
桂 林 理 工 大 学 实 验 报 告 班级软件2班学号3162052051734姓名梁振宇同组实验者 实验名称数据查询日期 2018年 06 月05 日 一.实验目的: 1. 观察查 ...
- 数据库——实验二 数据查询
1.实验目的 理解SQL 程序设计基本规范,熟练运用SQL 语言实现数据查询,包括单表查询.分组统计查询和连接查询.嵌套查询合和集合查询. 2.实验内容和要求 针对tpch 数据库或自建数据库test ...
- 数据库实验三 数据查询二
第1关:多表查询 任务描述 本关任务:查询来自借阅.图书.读者数据表的数据 为了完成本关任务,你需要掌握: 如何多表查询 相关知识 查询多个数据表 在实际应用中,查询经常会涉及到几个数据表. 基于多个 ...
- 数据库-实验二-数据查询
--查询"红楼梦"目前可借的各图书编号,及所属版本信息 select 图书编号,出版单位 from 书目,图书 where 书目.isbn=图书.isbn and 书名='红楼梦 ...
- mysql查询2个isbn数据,数据库实验二 数据查询
ALTER TABLE 书目 ADD 出版年份 VARCHAR(100); UPDATE 书目 SET 出版年份='2005' WHERE ISBN='7040195836'; UPDATE 书目 S ...
- 数据库实验三 数据查询一
第1关:按条件查询单表的所有字段 任务描述 本关任务:按条件查询数据表的所有字段 为了完成本关任务,你需要掌握: 如何查询数据表的所有字段 相关知识 查询数据表 命令格式: select * from ...
- 实验4mysql查询数据_数据库实验四 复杂查询.doc
实验四 复杂查询 一.实验目的 掌握两个表以上的连接查询的应用,包括嵌套查询. 二.实验内容 (1)查询比"林红"年纪大的男学生信息. select * from Studentw ...
- 实验5 数据查询--连接查询
实验5 数据查询--连接查询 一.实验目的 1.熟悉等值联接查询的方法. 2.熟悉非等值联接查询的方法. 3.熟悉自身联接查询的方法. 4.熟悉外联接查询的方法. 5.熟悉复合条件联接的方法. 二.实 ...
- 实验6 数据查询--高级查询
实验6 数据查询--高级查询 一.实验目的 1.掌握查询结果排序的方法. 2.掌握排序结果进行计算的方法. 3.掌握排序结果分组的方法. 4.掌握排序结果分组后再选择的方法. 二.实验要求 应用SEL ...
最新文章
- mybatis mysql Druid_mybatis+Druid连接池的问题
- 威纶通触摸屏与mysql_威纶通 与 信捷XC\XD系列PLC 通讯
- Centos7 下Redis3安装
- 基于双向匹配的陌生人社交策略及算法思考
- pythonlinux加入自己写的模块_利用ngx_python模块嵌入到Python脚本
- 方法引用_通过对象名引用成员方法
- mysql load 占位符_Mysql占位符插入
- 实用的java代码生成器,开箱即用(基于mybatisplus的AutoGenerator)
- python mro文件_Python MRO
- dirsearch工具(Web目录爆破)
- Android程序打开和关闭输入法
- 最新cuDNN 7[Linux]百度云下载[免费] 适用于CUDA 10.0
- 【转帖】防止ASP.NET按钮多次提交的办法
- swiper vue 初始化方法_详解swiper在vue中的应用(以3.0为例)
- java B2B2C Springcloud电子商城系统- Gateway初体验
- 一文带你了解SpringMVC框架的基本使用
- 教大家集中注意力的训练方法
- colab常见问题解答
- 微软服务器ip,微软服务器环境中的IP地址管理
- 关于高德地图问题总结 (二)地理围栏的使用
热门文章
- 还有谁!!!?谁是Uber下一个要颠覆的行业?
- “共享经济”何以真“共享”——区块链技术赋能共享出行
- jsp未正确拼写字 mysql_JAVA字符编码
- 解决由于权限问题导致YUM安装失败
- WEB渗透测试(一)被动信息收集1(DNS信息收集、DNS字典爆破、DNS注册信息)
- 【51码儿】【Linux学习笔记】第1章 安装、登录CentOS7
- (个人)AR电子书系统创新实训第一周(1)
- “阿里云之父”王坚:硅谷不应当成为我们的天花板 | 腾讯2017年Q3营收同比增61%
- TimingWheel 令人拍案叫绝的设计
- app开通支付宝支付简要流程