数据库实验三

目录

1 建立表并插入数据

1.1 SQL语句

1.2 截图

2 单表查询

2.1 选择表中若干列

2.1.1 SQL语句

2.1.2 截图

2.2 选择表中若干元组

2.2.1 SQL语句

2.2.2 截图

2.3 order by子句

2.3.1 SQL语句

2.3.2 截图

​​​​​​​2.4 聚集函数

2.4.1 SQL语句

2.4.2 截图

​​​​​​​2.5 group by子句

2.5.1 SQL语句

2.5.2 截图

​​​​​​​3 连接查询

3.1 等值连接

3.1.1 SQL语句

3.1.2 截图

​​​​​​​3.2 自身连接

3.2.1 SQL语句

3.2.2 截图

​​​​​​​3.3 外连接

3.3.1 SQL语句

3.3.2 截图

​​​​​​​3.4 多表连接

3.4.1 SQL语句

3.4.2 截图

​​​​​​​4 嵌套查询

4.1 in的子查询

4.1.1 SQL语句

4.1.2 截图

​​​​​​​4.2 比较运算符的子查询

4.2.1 SQL语句

4.2.2 截图

​​​​​​​4.3 All或ANY的子查询

4.3.1 SQL语句

4.3.2 截图

​​​​​​​4.4 Exist的子查询

4.4.1 SQL语句

4.4.2 截图

​​​​​​​5 集合查询

​​​​​​​5.1 Union

5.1.1 SQL语句

5.1.2 截图

​​​​​​​5.2 Intersect

5.2.1 SQL语句

5.2.2 截图

​​​​​​​5.3 Except

5.3.1 SQL语句

5.3.2 截图


1 建立表并插入数据

1.1 SQL语句

create database ExperimentThree;
use ExperimentThree;

create table Student3
(
   Sno char(2) not null,
   Sname varchar(20) not null,
   Ssex char(2) not null,
   constraint s2 check(Ssex in('', '')),
   Sage int not null,
   constraint s3 check (Sage between 0 and 130),
   Department varchar(20) not null
);

create table Course3
(
   Cno char(2) not null ,
   Cname varchar(20) not null,
   Cprepare varchar(20) not null,
   Ccredit float not null,
   constraint c3 check(0 < Ccredit)
);

create table SC3
(
   Sno char(2) not null,
   Cno char(2) not null,
   Performance float not null,
   constraint sc1 check(Performance between 0 and 100)
);

insert into student3(sno, sname, ssex, sage, department)
values (21, '张三', '', 18, '计通学院'),
       (04, '李四', '', 19, '化学院'),
       (02, '翠花', '', 18, '文新学院');

insert into course3(cno, cname, cprepare, ccredit)
values (11, '概率论', '高等数学', 3),
       (12, '数字电路', '离散结构', 2.5),
       (13, '数据结构', '离散结构', 3.5),
       (01, '嵌入式', '数字电路', 2);

insert into sc3(sno, cno, performance)
values (21, 11, 66),
       (02, 01, 89),
       (04, 12, 59);

1.2 截图

单表查询

2.1 选择表中若干列

2.1.1 SQL语句

use experimentThree;

select Sname, Department
from student3;

2.1.2 截图

2.2 选择表中若干元组

2.2.1 SQL语句

use experimentThree;

select Sno
from student3;

2.2.2 截图

​​​​​​​2.3 order by子句

2.3.1 SQL语句

use experimentThree;

select Sno, Performance
from sc3
where Performance > 60
order by Performance desc;

2.3.2 截图

​​​​​​​2.4 聚集函数

2.4.1 SQL语句

use experimentThree;

select count(Cno)
from course3
where Ccredit >= 3;

2.4.2 截图

​​​​​​​2.5 group by子句

2.5.1 SQL语句

use experimentThree;

select Sno
from sc3
group by Sno
having avg(Performance) >= 60;

2.5.2 截图

​​​​​​​3 连接查询

3.1 等值连接

3.1.1 SQL语句

use experimentThree;

select *
from student3, sc3
where student3.Sno = sc3.Sno;

3.1.2 截图

​​​​​​​3.2 自身连接

3.2.1 SQL语句

use experimentThree;

select first.cname, second.cprepare
from course3 first, course3 second
where first.Cprepare = second.Cname;

3.2.2 截图

​​​​​​​3.3 外连接

3.3.1 SQL语句

use experimentThree;

select course3.*,  sc3.*
from course3 left outer join sc3 on course3.Cno = sc3.Cno;

3.3.2 截图

​​​​​​​3.4 多表连接

3.4.1 SQL语句

use experimentThree;

select student3.sno, Sname, Cname, Performance
from student3,sc3,course3
where student3.Sno = sc3.Sno and sc3.Cno = course3.Cno;

3.4.2 截图

​​​​​​​4 嵌套查询

4.1 in的子查询

4.1.1 SQL语句

use experimentThree;

select Cno, Cname
from course3
where Cno in (
    select Cno
    from sc3
    );

4.1.2 截图

​​​​​​​4.2 比较运算符的子查询

4.2.1 SQL语句

use experimentThree;

select Cno, Cname
from course3
where Cno = (
    select Cno
    from sc3
    where Performance < 60
    );

4.2.2 截图

​​​​​​​4.3 All或ANY的子查询

4.3.1 SQL语句

use experimentThree;

select Sname, Sage
from student3
where Sage <= any (
    select Sage from student3
    where Sage = 18
);

4.3.2 截图

​​​​​​​4.4 Exist的子查询

4.4.1 SQL语句

use experimentThree;

select Sno, Sname
from student3
where exists(
    select *
    from sc3
    where Performance >= 60 and sc3.Sno = student3.Sno
          );

4.4.2 截图

​​​​​​​5 集合查询

​​​​​​​5.1 Union

5.1.1 SQL语句

use experimentThree;

select *
from student3
where Department = '计通学院'
union
select *
from student3
where Sage < 19;

5.1.2 截图

​​​​​​​5.2 Intersect

5.2.1 SQL语句

use experimentThree;

select *
from student3
where Department = '计通学院'
intersect
select *
from student3
where Sage < 19;

5.2.2 截图

​​​​​​​5.3 Except

5.3.1 SQL语句

use experimentThree;

select *
from student3
where Department = '化学院'
except
select *
from student3
where Sage < 19;

5.3.2 截图

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

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

相关文章

Java 和 JavaScript 的奇妙协同:语法结构的对比与探索(中)

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

Lag-Llama:第一个时间序列预测的开源基础模型介绍和性能测试

2023年10月&#xff0c;我们发表了一篇关于TimeGPT的文章&#xff0c;TimeGPT是时间序列预测的第一个基础模型之一&#xff0c;具有零样本推理、异常检测和共形预测能力。 虽然TimeGPT是一个专有模型&#xff0c;只能通过API访问。但是它还是引发了对时间序列基础模型的更多研…

Ollama 可以在 Windows 上运行了

Ollama 可以在 Windows 上运行了 0. 引言1. 下载 Ollma 安装文件2. 安装 Ollama3. 使用 Ollama4. (可选)环境变量5. (可选)修改默认模型 0. 引言 Ollama 终于可以在 Windows 上运行了&#xff0c;一直以来都是 “Coming soon”。 运行 Mixtral 8*7B 试了一下&#xff0c;推理…

OpenCV中的边缘检测技术及实现

介绍: 边缘检测是计算机视觉中非常重要的技术之一。它用于有效地识别图像中的边缘和轮廓&#xff0c;对于图像分析和目标检测任务至关重要。OpenCV提供了多种边缘检测技术的实现&#xff0c;本博客将介绍其中的两种常用方法&#xff1a;Canny边缘检测和Sobel边缘检测。 理论介…

解决vscode报错,在赋值前使用了变量“XXX“

问题&#xff1a;如图所示 解决方法&#xff1a; 法一&#xff1a; 补全函数使其完整 法二&#xff1a; 使用断言

杨中科 ASP.NET DI综合案例

综合案例1 需求说明 1、目的:演示DI的能力; 2、有配置服务、日志服务&#xff0c;然后再开发一个邮件发送器服务。可以通过配置服务来从文件、环境变量、数据库等地方读取配置&#xff0c;可以通过日志服务来将程序运行过程中的日志信息写入文件、控制台、数据库等。 3、说明…

LocaSpace Viewer图新地球 4.4.9工程版授权

LocaSpace Viewer图新地球是一个独特的三维数字地球软件&#xff0c;它不用安装&#xff0c;且是一个轻量级的软件&#xff0c;永久授权激活&#xff0c;没有功能方面的限制&#xff0c;在这里&#xff0c;你可以根据需要进行各种操作&#xff0c;如获取多种在线地图资源&#…

正确看待OpenAI大模型Sora

2月16日凌晨&#xff0c;OpenAI发布了文生视频模型Sora。官方是这样描述的&#xff1a;Sora is an AI model that can create realistic and imaginative scenes from text instructions.Sora一个人工智能模型&#xff0c;它可以根据文本指令创建逼真和富有想象力的场景。Sora…

c++之function和bind详解-SurfaceFlinger学习必备语法基础

背景 C中的function和bind是为了更方便地进行函数对象的封装和调用而设计的&#xff0c;在SurfaceFlinger源码中也是有很多使用部分。 比如分析Vsync相关源码时候有相关回调时候 可以看到这里的mRegistration就有个参数是 std::bind,怎么这里就可以进行回调呢&#xff1f; 所…

【机器学习笔记】7 KNN算法

距离度量 欧氏距离(Euclidean distance) 欧几里得度量&#xff08;Euclidean Metric&#xff09;&#xff08;也称欧氏距离&#xff09;是一个通常采用的距离定义&#xff0c;指在&#x1d45a;维空间中两个点之间的真实距离&#xff0c;或者向量的自然长度&#xff08;即该点…

C语言指针(初阶)

文章目录 1:内存与地址1.1内存1.2:如何理解编址 2:指针变量与地址2.1:指针变量与解引用操作符2.1.1:指针变量2.1.2:如何拆解指针类型2.1.3:解引用操作符 2.2:指针变量的大小 3:指针变量类型的意义代码1解引用修改前解引用修改后 代码2解引用修改前解引用修改后 4:const修饰指针…

算法刷题:和为s的两个数

和为s的两个数 .题目链接题目详情算法原理我的答案 . 题目链接 和为s的两个数 题目详情 算法原理 这里我们是利用单调性来使用双指针的对撞指针来解决问题 因为数组给的是有序递增的,因此我们设置两个指针left和right来解决问题,当nums[left]与nums[right]相加会有三种情况:…