首页 > 数据库 >数据库总结复习(sql应用题 二)

数据库总结复习(sql应用题 二)

时间:2023-12-05 22:12:36浏览次数:40  
标签:关系 复习 应用题 语法 sql 连接 等值

目录

前言

本文针对考纲上的30分sql应用题所涉及到的知识进行归纳总结。
分为两篇文章,本篇为关系代数相关知识点。



关系代数

关系间运算

关系和关系之间需要用到以下关系运算符:

图片名称

其中,连接从连接条件上分,等值连接,非等值连接。上图不加任何条件的连接,叫做自然连接,它是去重后的等值连接,一种特殊的等值连接。

图片名称

从连接结果来看,又分为左连接,右连接,外连接。
左连接就是左表的值一定要全出现,即使右表没有与之匹配的值,右表属性以null呈现在结果表里。
右连接同理。
外连接就是,左表和右表的值全要出现,没法匹配的就以null呈现在结果表里。

image


条件表达式

条件表达式需要用到以下运算符:

图片名称

使用案例

设有一个SPJ数据库,包括供应商表S, 零件表P,工程项目表J, 供应情况表SPJ 4个关系模式,如下:

图片名称 图片名称 图片名称 图片名称

  • 求没有使用天津供应商生产的红色零件的工程号JNO
    图片名称

  • 求至少用了S1供应商所供应的全部零件的工程号JNO
    图片名称

语法树

主要是考画出语法树,然后优化它的题目。
优化就是把选择下移,把笛卡尔积和选择变成连接。

例子

设有sql查询树如下:
图片名称

1)画出它的关系代数语法树。
2)再画出优化后的语法树。
1)
图片名称

2) 图片名称

标签:关系,复习,应用题,语法,sql,连接,等值
From: https://www.cnblogs.com/lmj00/p/17868132.html

相关文章

  • 每天5分钟复习OpenStack(十二)Ceph FileStore 和 BlueSotre
    一个最小化的Ceph集群需要三个组件MONMGROSD.上一章我们部署了MON,本章节我们完成剩下MGR和OSD的部署。在文末我们将重点介绍下什么是FileStore和BlueStore,并详细分析其特点,来说明为什么Ceph社区放弃了FileStore,直接采用了BlueStore.1、MGR部署创建mgr工作目录sudo-u......
  • orm打印原生sql语句方法
    方式一:使用print打印时在queryset对象后使用.querybook_qs=models.Book.objects.filter(pk=1).values('publish__name','title')print(book_qs.query)book_qs=models.Book.objects.filter(pk=1).values('publish__name','title')print......
  • sql-3.1外键
     从表CREATETABLE`student1`(`id`INTNOTNULLAUTO_INCREMENTCOMMENT'id',`greadid`INT(11)NOTNULLCOMMENT'gradeid',`pwd`VARCHAR(23)COMMENT'密码',`name`VARCHAR(32)NOTNULLCOMMENT'名字',`add`VARCHAR......
  • day15 函数复习和模块基础
    蒙特卡洛仿真2023-12-0519:28:40函数复习deffunc(*args,**kwargs): pass#func可以接受所有的参数*形参:接受多余的位置实参以元组的形式存储**形参:接受多余的关键字参数以字典的形式存储函数对象的作用:①引用f1=func②作为函数的返回值returnfunc③作为函数的参数f2(......
  • StackGres 数据库平台工程,使用 Citus + Patroni 创建生产级高可用分布式 PostgreSQL
    系列StackGres,可私有部署的云原生数据库平台工程StackGres 数据库平台工程功能介绍与快速上手StackGres1.6数据库平台工程集群配置管理(K8SPods/PostgreSQL/PgBouncer)StackGres1.6数据库平台工程,集群高可用(Patroni3管理)什么是ShardedCluster(分片集群)Sha......
  • 大数据实验——mysql服务的启动
    黑马程序的mysql服务启动密码是hadoop直接在主控制台上输出mysql-uroot-p然后输入密码进入mysql服务 剩下的就是在finallshell里面进行一些建表增删改查操作,还有一个问题就是通过java代码进行对表数据的增删改查我才用的方法是在Navicat里面建一个node1主机的链接然后就......
  • MySQL EXPLAIN详解
    MySQL数据库是许多Web应用程序的底层支持,而查询性能的优化是确保系统高效运行的关键。在MySQL中,EXPLAIN是一项强大的工具,可帮助开发者深入了解查询语句的执行计划,从而更好地优化查询性能。本文将详细解析MySQL的EXPLAIN关键字,以揭开查询执行计划的面纱。什么是EXPLAIN?mysql官网......
  • 解读JetBrains 2023年开发者生态报告,MySQL仍是全球数据库顶流 | StoneDB数据库观察 #1
    :::hljs-center:::<br>:::hljs-right作者:宇亭:::<br>最近,全球知名的开发者工具公司JetBrains对外发布了《2023年开发者生态系统报告》,报告的具体内容,前几天已经有中文互联网的媒体解读了,由于我们是做数据库的,所以自然而然想要特别关注一下数据库的情况——结果在意料之......
  • 【MySQL】回收普通用户对其他库的查询权限,普通用户只能看见自己的表
    如何解决已回收权限的普通用户对其他库的查看权限?正常来说,普通用户自己创建的数据库表的权限无法被回收,如果用户曾经被授权过所有权限,取消权限后,依然可以看见其他库。其原因就是被授予了grantoption权限,需要手动取消"WITHGRANTOPTION"是MySQL中的一个选项,用于将授予权限给其......
  • SqlHelper + winfrom + datagridview操作图片
    datagridview中单元格显示图片,图片的增删改查点击单元格选择图片 1、EmployerpublicclassEmployer{publicintId;publicstringName;publicstringPhoneNum;publicstringAddress;publicstringPhoto;}2、ObjectConvertUtil处理......