mysql将sql转为关系代数_MySQL实现关系代数运算
MySQL实现关系代数运算
MySQL实现关系代数运算
MySQL实现关系代数运算
[var1]
两表的所有元组
select * from department;
select * from instructor;
笛卡尔积结果
select * from instructor, department;
[var1]
两表的所有元组
select * from department
select * from department0
并运算结果
select * from department
union
select * from department0;
[var1]
两表的所有元组
交运算
select * from department
inner join department0 on department.building = department0.building;
[var1]
两表的所有元组
差运算 NOT IN
select * from department
where building not in
(select building from department0);
差运算 LFET JOIN
select * from department
left join department0 on department.building = department0.building
where department0.building is null;
[var1]
表
选择结果
[var1]
表
投影结果
select name from instructor;
[var1]
表
自然连接结果
select * from course natural join department;
[var1]
create table department
(dept_name varchar(20),
building varchar(15),
budget numeric(12, 2),
primary key (dept_name));
create table course(
course_id varchar(7),
title varchar(50),
credits numeric(2, 0),
primary key (course_id),
foreign key(dept_name) references department(dept_name));
create table instructor(
ID varchar(5),
name varchar(20) not null,
dept_name varchar(20),
salary numeric(8,2),
primary key(ID),
foreign key(dept_name) references department(dept_name));
create table section(
course_id varchar(8),
sec_id varchar(8),
semester varchar(6),
year numeric(4,0),
building varchar(15),
room_number varchar(7),
time_slot_id varchar(4),
primary key(course_id, sec_id, semester, year),
foreign key (course_id) references course(course_id));
create table teaches(
ID varchar(5),
course_id varchar(8),
sec_id varchar(8),
semester varchar(6),
year numeric(4, 0),
primary key(ID, course_id, sec_id, semester, year),
foreign key(course_id, sec_id, semester, year) references section(course_id, sec_id, semester, year),
foreign key(ID) references instructor(ID));
insert into department
(dept_name, building, budget)
values
('CS', 'CS Building', 10000);
insert into department
(dept_name, building, budget)
values
('SE', 'SE Building', 10000);
insert into course
(course_id, title, dept_name, credits)
values
('10001', 'DS', 'CS', 5);
insert into course
(course_id, title, dept_name, credits)
values
('10002', 'OS', 'CS', 5);
insert into course
(course_id, title, dept_name, credits)
values
('10003', 'SE', 'SE', 5);
insert into instructor
(ID, name, dept_name, salary)
values
('10001', 'Mozart', 'CS', 10000);
insert into instructor
(ID, name, dept_name, salary)
values
('10002', 'Dennis', 'CS', 20000);
insert into instructor
(ID, name, dept_name, salary)
values
('10003', 'Kim', 'SE', 15000);
insert into section
(course_id, sec_id, semester, year, building, room_number, time_slot_id)
values
('10001', '10001', '1', 2020, 'CS Building', '101', '001');
insert into section
(course_id, sec_id, semester, year, building, room_number, time_slot_id)
values
('10002', '10002', '1', 2020, 'CS Building', '103', '002');
insert into section
(course_id, sec_id, semester, year, building, room_number, time_slot_id)
values
('10003', '10003', '1', 2020, 'SE Building', '203', '003');
insert into teaches
(ID, course_id, sec_id, semester, year)
values
('10002', '10001', '10001', '1', 2020);
insert into teaches
(ID, course_id, sec_id, semester, year)
values
('10001', '10002', '10002', '1', 2020);
insert into teaches
(ID, course_id, sec_id, semester, year)
values
('10003', '10003', '10003', '1', 2020);
[var1]
数据库系统概论(第5版)
数据库系统概念(原书第6版)
[var1]
由于博主水平有限,不免有疏漏之处,欢迎读者随时批评指正,以免造成不必要的误解
MySQL实现关系代数运算相关教程
mysql将sql转为关系代数_MySQL实现关系代数运算相关推荐
- mysql将sql转为关系代数_关系数据库基础:关系代数运算知识笔记
1.关系代数运算符 集合运算符:并(U).差(-).交(∩).笛卡尔积(×) 专门的关系运算符:选择(∂).投影(π).连接(∞).除(÷) 算术比较符:大于(>).大于等于(≥).小于(< ...
- mysql 常用sql调优_MySQL 常用SQL优化
MySQL 常用SQL优化: 一.大批量插入数据: 1.对于load MyISAM存储引擎的表,可以通过关闭打开MyISAM表非唯一索引的更新来提升导入速度: 例:mysql > alter t ...
- mysql执行sql语句按钮_mysql执行sql语句过程
开发人员基本都知道,我们的数据存在数据库中(目前最多的是mysql和oracle,由于作者更擅长mysql,所以这里默认数据库为mysql),服务器通过sql语句将查询数据的请求传入到mysql数据库 ...
- mysql执行sql文件创建数据库_mysql执行sql文件创建数据库
如何执行一个mysql的sql脚本文件 sql脚本是包含一到多个sql命令的sql语句,我们可以将这些sql脚本放在一个文本文件中(我们称之为"sql脚本文件"),然后通过相关的命 ...
- mysql 拼接sql批量执行_Mysql 学习笔记之 SQL 执行过程
写在开始 本系列源自极客时间 MySQL 专栏,整理而成 在执行下面这个查询语句时的执行的流程是怎么样的? mysql 看过相关资料的同学都可能知道执行流程大概是这样的: 其执行过程为:连接.查询缓存 ...
- mysql oracle sql区别吗_mysql数据库的SQL语句和oracle的有什么区别?详细点
匿名用户 1级 2017-08-20 回答 区别如下: 1. Oracle是大型数据库而Mysql是中小型数据库,Oracle市场占有率达40%,Mysql只有20%左右,同时Mysql是开源的而Or ...
- mysql中sql批量插入_MySQL批量SQL插入性能优化
对于一些数据量较大的系统,数据库面临的问题除了查询效率低下,还有就是数据入库时间长. 特别像报表系统,每天花费在数据导入上的时间可能会长达几个小时或十几个小时之久.因此,优化数据库插入性能是很有意义的 ...
- mysql 拼接sql批量执行_MySql 学习之 一条更新sql的执行过程
上一篇文章咱们说了一条查询sql的执行过程. https://zhuanlan.zhihu.com/p/156155783zhuanlan.zhihu.com 今天咱们说说一条更新sql的执行过程. ...
- mysql中sql语句使用_mysql数据库中用到sql语句
一.删除mysql表中的的索引 alter table DM_Equipment_Fixed drop index name ; 添加索引:ALTER TABLE table_name ADD IND ...
最新文章
- 影像组学视频学习笔记(21)-影像组学常用软件推荐、Li‘s have a solution and plan.
- c语言黑白棋运行结果,黑白棋c语言代码
- 网站内容重复了怎么?更好的解决办法是什么?
- UIScrollView 的代理方法简单注解
- SpannableString
- mysql odbc 配置详解
- 2019-5-30-websocket下readyState常量
- linux mysql服务器安装_Linux服务器MySQL安装
- 产生死锁的四个必要条件
- Table Store: 海量结构化数据实时备份实战
- mysql workbench第二栏图标中英文意思
- 【部署问题】解决Nginx: [error] open() "/usr/local/Nginx/logs/Nginx.pid“ failed(2:No such file or directory)
- The path ‘E:\ZERO‘ does not belong to a directory.
- Real World Haskell 第四章 函数式编程
- java switchl练习,java switch练习
- Atitit 信息管理 艾提拉著作 CAPT1信息源数据源 目录 1. 数据元的数据格式 图片 文本 视频 音频	2 2. 按照应用功能使用分类	2 2.1. Diary Cyarlog	2
- 【教程】InstallShield使用完全教程
- 编译原理期末试题(8套含答案)
- 手淘首页流量突然暴跌的原因,怎么办?
- 计算机网络 之 P2P架构
热门文章
- Java版人脸检测详解下篇:编码
- JS中的变量提升总结
- hdu3999 The order of a Tree(BST的建立)
- python数组截取_PHP array_slice():截取数组的一部分
- Your branch and ‘origin/master‘ have diverged, and have 1 and 3 different commits each, 情景一
- RK3326 展频操作
- mysql异步写入数据库_scrapy爬虫框架中数据库(mysql)的异步写入
- 日积月累:Java等待子线程执行完毕,再执行后续逻辑
- 简单代码训练(if语句)
- 机器学习(十五)异常检测