数据库:数据查询

news2024/9/22 23:19:43

1 实验目的

掌握SQL语言的数据查询语句,具体包括:
       SELECT语句的基本用法
       使用WHERE子句进行有条件的查询
       使用IN,NOT IN,BETWEEN等谓词查询
       利用LIKE子句实现模糊查询
       利用ORDER子句为结果排序
       用SQL Server的统计函数进行统计计算
       用GR0UP BY子句实现分组查询的方法
       连接查询的方法

2 实验任务

将学生成绩数据库(XSCJ)导入SQL SERVER 2012,并做如下查询:

       查询选修了课程的学生的学号;

       查询全体学生的姓名和出生年份,并将列别名改为XM和CSNF;

       查询年龄在18到20(包括18岁和20岁)之间学生的学号、姓名和系。

       查询信息系(IS)、数学系(MA)和计算机科学系(CS)学生的姓名和性别。

       用LIKE查询课程名为DB_S程的课程号和学分。

       查所有有成绩的学生学号和课程号。

       查询全体学生情况,查询结果按所在系的系号升序排列,同一系中的学生按年龄升序排列

       查询选修了课程的学生人数。

       计算1号课程的学生平均成绩。

       查询有3人以上(含3人)同学选修课程的课程号。

       查询1号课程的间接先修课。

       查询每个学生的学号、姓名、选修的课程名及成绩。

       找出每个学生等于他选修课程平均成绩的课程号。

拓展练习:将以下数据录入上次实验建立的BSXT数据库,并完成以下查询:

  1. 查询全体学生的学号和姓名和电话。
  2. 查询全体学生的基本情况。
  3. 查询带了毕业生的老师的教师号。
  4. 查询教师“朱龙”基本情况。
  5. 查询所有姓“王”同学的基本情况。
  6. 统计每种学历老师的人数。
  7. 查询1组老师所带毕业生的基本情况(包括学号,姓名,教师号,教师姓名,毕业设计题目)(注:1组老师只能带1组的学生)
  8. 查询所有学生的选题情况(包括没有选题的学生),包括学号,姓名,题目名称,教师名称。(注:要求老师的组号和学生的组号相一致.)

3 相关知识

       数据查询是数据库的核心操作。SQL提供了SELECT语句进行数据查询,该语句具有灵活的使用方式和丰富的功能。其一般格式为:

SELECT [ALL|DISTINCT]<目标列表达式>[,<目标列表达式>]……

FROM<表名或视图名>……|(<SELECT语句>)[AS]<别名>

[WHERE<条件表达式>][GROUP BY<列名1>][HAVING<条件表达式>]

[ORDER BY<列名2>[ASC|DESC]];

整个SELECT语句的含义是根据WHERE子句的条件表达式以FROM子句指定的基本表、视图或派生表中找出满足条件的元组,再按SELECT子句中的目标列表达式选出元组中的属性值形成结果表。

       如果有GROUP BY子句,则将结果按<列名1>的值进行分组,该属性列值相等的元组为一个组,通常会在每组中作用聚集函数。如果GROUP BY子句带HAVING短语,则只有满足指定条件的组才予以输出。如果有ORDER BY子句,则结果还要按<列名2>的值升序或降序排序。SELECT语句既可以完成简单的单表查询,也可以完成复杂的连接查询和嵌套查询。

       单表查询是指仅涉及一个表的查询,若一个查询同时涉及两个以上的表,则称之为连接查询。连接查询是关系数据库中最主要的查询,包括等值连接查询、自然连接查询、非等值连接查询、自身连接查询、外连接查询和复合条件连接查询等。

4 实验内容与实验结果

SELECT DISTINCT Sno
        FROM SC;
SELECT  Sname  XM , 2015-Sage  CSNF
FROM Student;
SELECT Sno, Sname,Sdept
FROM     Student
WHERE   Sage BETWEEN 18 AND 20;
SELECT Sname,Ssex
	FROM  Student
	WHERE Sdept IN ( 'IS','MA','CS' );
SELECT Cno,Ccredit
      FROM Course
      WHERE Cname LIKE '数据%' ESCAPE '\';
SELECT Sno,Cno
    FROM  SC
    WHERE  Grade IS NOT NULL;
SELECT  *
        FROM  Student
        ORDER BY Sdept,Sage DESC;
SELECT COUNT(DISTINCT Sno)
    FROM SC;
SELECT AVG(CAST(Grade as int))
        FROM SC
        WHERE Cno= 1;
SELECT Sno
     FROM  SC
     GROUP BY Sno
     HAVING  COUNT(*) >=3;
SELECT  FIRST.Cno,SECOND.Cpno
       FROM  Course  FIRST,Course  SECOND
      WHERE FIRST.Cpno = SECOND.Cno and FIRST.Cpno='1';
SELECT Student.Sno,Sname,Ssex,Sage,Sdept,Cno,Grade
    FROM  Student  LEFT OUTER JOIN SC ON (Student.Sno=SC.Sno);
SELECT Sno, Cno
    FROM  SC  x
    WHERE Grade >=(SELECT AVG(CAST(Grade as int)) 
		                        FROM  SC y
                                   WHERE y.Sno=x.Sno);

SELECT Sno,Sname,Stel
FROM Student;
SELECT *
FROM Student;
SELECT DISTINCT Tno
FROM Topic;
SELECT *
FROM Teacher
WHERE Tname = '朱龙';
SELECT *
FROM Student
WHERE Sname LIKE '王%';
SELECT Tdegree,COUNT(*) as number
FROM Teacher
GROUP BY Tdegree;
SELECT Student.Sno,Sname,Teacher.Tname,Hname
FROM Student LEFT OUTER JOIN Topic ON(Student.Sno = Topic.Sno),Teacher
WHERE Teacher.Troup = '1' AND Student.Sgroup = Teacher.Troup AND Teacher.Tno = Topic.Tno;
SELECT Student.Sno,Sname,Hname,Tname
FROM Student LEFT OUTER JOIN (SELECT Hname,Tname,Sno,Troup
FROM Topic,Teacher
WHERE Topic.Tno = Teacher.Tno) TEMP ON(Student.Sno = TEMP.Sno)

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

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

相关文章

SQL Server 2022的游标

《SQL Server 2022从入门到精通&#xff08;视频教学超值版&#xff09;》图书介绍-CSDN博客 《SQL Server 2022从入门到精通&#xff08;视频教学超值版&#xff09;&#xff08;数据库技术丛书&#xff09;》(王英英)【摘要 书评 试读】- 京东图书 (jd.com) 游标是SQL Serv…

使用 CSS 打印样式为 Web 页面设置专业的打印机效果

对于有打印需求的网页&#xff0c;特别是文章的详情页&#xff0c;需要设置专门的打印样式来适配页面。CSS 打印样式允许你为网页设置专门用于打印的样式。文本就是专门介绍如何使用 CSS 打印样式为 Web 页面设置专业的打印机效果。 media print 通过使用 media print 媒体查…

【轨物洞见】当下是技术创新的好时机

“创新之父”熊比特认为&#xff0c;创新是一个经济学名词&#xff0c;是一种新的生产函数&#xff0c;即通过重新组合从未有过的生产要素来引入现有的生产过程&#xff0c;判断创新的关键是有没有创造价值。熊比特认为&#xff0c;创新是经济发展的根本动力&#xff0c;它包括…

[LitCTF 2023]debase64-入土为安的第十八天

点进去sub_401520(v15, (int)v4) if ( !*a1 )return 0;v2 a1 4;v3 a1;v4 0;v5 0;v13 0;while ( 1 ){v14 -1;for ( i 0; i ! 64; i ){while ( byte_404000[i] ! *v3 ){if ( i 64 )goto LABEL_7;}LOBYTE(v14) i;} LABEL_7:LOBYTE(i) 0;do{while ( byte_404000[i] ! a1…

【三维重建】SpotlessSplats:去除瞬态干扰物的三维高斯喷溅(3DGS)

代码&#xff1a;https://spotlesssplats.github.io 论文&#xff1a;https://arxiv.org/pdf/2406.20055 来源&#xff1a;DeepMind&#xff0c;多伦多大学&#xff0c;斯坦福大学&#xff0c;西蒙弗雷泽大学 提示&#xff1a;关注B站【方矩实验室】&#xff0c;查看视频讲解…

【SQL】有趣的电影

目录 题目 分析 代码 题目 表&#xff1a;cinema -------------------------- | Column Name | Type | -------------------------- | id | int | | movie | varchar | | description | varchar | | rating | float | -…

JDBC如何避免SQL注入

JDBC如何避免SQL注入 一 . 什么是SQL注入 SQL注入&#xff08;SQL Injection&#xff09;是一种代码注入技术&#xff0c;它允许攻击者将或“注入”恶意的SQL命令到后端数据库引擎执行。这些恶意的SQL命令可以执行未授权的数据库查询、修改数据、管理数据库服务器上的文件系统…

2024.8.12 作业

TCP服务器端代码实现 #include <myhead.h> #define SER_PORT 6666 #define SER_IP "192.168.254.129" int main(int argc,const char *argv[]) {//1.创建套接字文件int sfd socket(AF_INET,SOCK_STREAM,0);if(sfd-1){perror("socket error");retur…

Echarts-GL和three.js对比,实力在一个档次么?

我们都知道echarts非常好用&#xff0c;简单配置就可以实现各式各样的图表下过&#xff0c;echarts有一个扩展叫echarts-GL&#xff0c;可以实现三维图表效果&#xff0c;那么和three.js相比呢&#xff1f; 一、Echarts-GL的来源 ECharts-GL 是百度开源的一款基于 WebGL 的数据…

PMP和PMI-ACP 考哪个证书好,还是两个都考?

PMP是一个由美国项目管理协会&#xff08;PMI&#xff09;发起的项目管理专业人士或专家资格认证&#xff0c;它评估从业者领导和引导项目团队的能力。PMP在中国早已推广&#xff0c;基于系统项目管理的框架体系&#xff0c;是项目管理领域的基本要求。这个证书知名度很高&…

为什么要加强产供协同管理?可以从哪些方面提高产供协同效率?

随着市场竞争的加剧和客户需求的多变&#xff0c;企业之间的竞争已经转变为供应链之间的竞争。在这一背景下&#xff0c;产供协同管理显得尤为重要。本文将概述加强产供协同管理的必要性&#xff0c;探讨其在提升企业响应速度、优化库存、增强客户满意度和降低成本方面的作用&a…

【数学建模备赛】Ep02:TOPSIS模型(优劣解距离法)

文章目录 一、前言&#x1f680;&#x1f680;&#x1f680;二、TOPSIS法&#xff1a;☀️☀️☀️1. 引入&#xff08;综合类评价问题&#xff09;1.1 分析层次分析法的局限1.2 小例子①给出评分类比权重②构造计算评分的公式③解释④拓展问题&#xff08;增加指标个数&#x…

JVM知识总结(类加载器)

文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 文章收录在网站&#xff1a;http://hardyfish.top/ 类加载器 Bootstrap引导类加载器 引导类加载器也被称为启动类加载…

计算机系统基础知识:数据表示及运算

计算机系统基础知识 1. 计算机系统基本组成2. 数据表示及运算2.1 数据表示进位计数值及其转换机器数和码制定点数和浮点数十进制编码ASCII码汉字编码Unicode 2.2 校验码2.3 逻辑代数及运算2.4 机器数的运算机器数的加减运算机器数的乘除运算浮点运算 1. 计算机系统基本组成 计…

opencv-python图像增强二:图像去雾(暗通道去雾)

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、简介&#xff1a;二、暗通道去雾方案简述&#xff1a;三、算法实现步骤3.1最小值滤波3.2 引导滤波3.3 计算图像全局光强 四&#xff1a;整体代码实现五&#xf…

iLight混合点光源 激光与LED技术的结合

51camera机器视觉产品资料查询平台的光源种类比较丰富&#xff0c;今天我们一起来看看其合作厂商iCore的明星产品iLight混合点光源&#xff0c;该产品提供了比LED更高的亮度&#xff0c;作为传统LED和氙气灯的替代品&#xff0c;它将激光和LED技术的结合&#xff0c;提供了长达…

创建vscode debug环境

c语言或者其他语言在 字符串指针使用细节很多&#xff0c;你不能编译整个镜像下载在设备里来调试。这些在一个.c文件里需要验证的细节&#xff0c;可以在vscode里创建一个main函数调试 1&#xff0c;环境创建 主要参考下面链接&#xff1a; 如何在VScode中让printf输出中文…

【项目】基于Vue2+Router+Vant 前端面经项目

环境配置 Vue脚手架的创建 在终端中打开输入 vue create 项目包名 -m npm注意⚠️&#xff1a;项目名称不再允许包含大写字母。 选择第三项 3.选择要安装的模块 从上到下的功能模块&#xff1a; Babel - ES&#xff1a;降级处理Router-Vue&#xff1a;路由插件CSS预处理器E…

基于STM32开发的智能家居照明控制系统

目录 引言环境准备工作 硬件准备软件安装与配置系统设计 系统架构硬件连接代码实现 初始化代码控制代码应用场景 家庭照明自动化节能照明管理常见问题及解决方案 常见问题解决方案结论 1. 引言 智能家居照明控制系统通过整合各种传感器和控制器&#xff0c;能够实现对家居照…

[全文]买椟还珠和坏事变好事?《分析模式》漫谈19

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 “Analysis Patterns”的第一章有这么一句&#xff1a; Modeling in a programming language also presents the danger of tying the models to that language. The model may use f…