笔面考点总结(二)数据库原理篇

前言

本篇是笔面考点总结系列的第二篇,主要总结数据库原理的考点。

数据库篇

数据库范式

  • 第一范式确保属性的原子性约束,即要求数据库表中的字段具有原子性,不可再分解。
  • 第二范式确保表中的每列都和主键相关,而不能只与主键的某一部分相关(针对联合主键而言)。
  • 第三方式确保每列都和主键列直接相关,而不是间接相关

总体上来说就是,第一范式不可拆分,第二范式完全依赖,第三范式消除传递依赖。

表联结查询(以 MySQL 标准为例子)

自联结查询

自联结查询是表与自身进行联结的查询,例如从课程表中找出课程号及其对应先修课程名。

SELECT x.no, y.name
FROM course AS x, course AS y
WHERE x.pcno = y.cno;

内联结查询

内联结查询是表间进行数据比较,得到匹配结果的查询,而根据比较方式不同,又分为等值联结、自然联结和不等联结。

  • 等值联结即表间数据进行相等比较,得到匹配结果的查询,包括重复列。
  • 自然联结就是消除重复列的等值联结。
  • 不等联结就是表间数据进行除相等以外的比较,得到匹配结果的查询,也包括重复列。

注:MySQL 数据库中可使用关键字 INNER JOIN 进行内联结查询。

外联结查询

外联结查询是可得到表间无关联行的查询,而根据指定包含那个表的所有行,又分为左联结、右联结和全联结。

  • 左联结即匹配左边表的所有行的查询,右边表无对应数据则置为 NULL 。
  • 右联结即是与左联结相反的查询。
  • 全联结即匹配左右两边表的所有行的查询。

注:MySQL 数据库中可使用关键字 OUTER JOIN 进行内联结查询,而左右联结分别为 LEFT OUTER JOINRIGHT OUTER JOIN

参考文献

原文地址:https://www.cnblogs.com/linzhehuang/p/10560373.html

时间: 2024-11-20 11:03:22

笔面考点总结(二)数据库原理篇的相关文章

数据库原理分析(强烈推荐)

转自:https://blog.csdn.net/ptsx0607/article/details/68941750 一提到关系型数据库,我禁不住想:有些东西被忽视了.关系型数据库无处不在,而且种类繁多,从小巧实用的 SQLite 到强大的 Teradata .但很少有文章讲解数据库是如何工作的.你可以自己谷歌/百度一下『关系型数据库原理』,看看结果多么的稀少[译者注:百度为您找到相关结果约1,850,000个-] ,而且找到的那些文章都很短.现在如果你查找最近时髦的技术(大数据.NoSQL或J

Redis原理篇

Redis原理篇 1.发布 订阅模式 1.1列表 的局限 ? 前面我们说通过队列的 rpush 和 lpop 可以实现消息队列(队尾进队头出),但是消费者需要不停地调用 lpop 查看 List 中是否有等待处理的消息(比如写一个 while 循环).为了减少通信的消耗,可以 sleep()一段时间再消费,但是会有两个问题: 1.如果生产者生产消息的速度远大于消费者消费消息的速度,List 会占用大量的内存. 2.消息的实时性降低. list 还提供了一个阻塞的命令:blpop,没有任何元素可以

《数据库原理》复习总结

<数据库原理>复习总结 数据库技术就是主要研究如何科学的组织和存储数据,高效的获取和处理数据,并可以满足用户各种不同的信息需求的技术,因为对数据库技术的需求非常大,所以学习这门课的知识和技术是非常必要的,应熟练弄清,掌握数据,数据管理,数据库,数据模型和概念模型的等专业术语的内涵. 第1章 绪论 1.掌握数据库.数据库管理系统.数据库系统(组成)的概念 2.了解数据库技术发展的三个阶段 3.掌握三级模式及二级映像的概念 4.理解数据库管理系统的主要功能 知识点: 数据:数据库系统研究和处理的对

基于Netty的聊天系统(一)通讯原理篇

今天周六,正好顺便把聊天系统的通讯原理写一下,本来是用XMPP+Openfire做了一个聊天,但是在做群聊那块需要去写插件来主动向表里变去写数据,因为openfire外国人写的,最初设计的群聊是会议室那种形式,和我们现在这种QQ群聊还是有差别的,改造起来比较麻烦,需要去通都源码等等,openfire是基于mina来写的,mina和netty又出自同一作者之手,那么我们就基于netty来写一个吧,首先我们来谈一谈通讯的原理 1:通讯原理 首先比方说A和B两个人要进行聊天(这里我们先讨论一对一这种聊

《数据库原理与应用》复习试题归纳

  <数据库原理与应用>复习试题归纳 一.单项选择题(每小题1分,共20分) 1.数据库的三个模式中,真正存储数据的是( )A.内模式  B.模式  C.外模式  D.三者皆存储数据 2.在数据库的三个模式中(  ) A.内模式只有一个,而模式和外模式可以有多个 B.模式只有一个,而内模式和外模式可以有多个 C.模式和内模式只有一个,而外模式可以有多个 D.均只有一个 3.关于模式,下列说法中错误的是(   ) A.数据库的全局逻辑结构描述   B.数据库的框架 C.一组模式的集合      

Git实战(二)原理

上次的博文Git实战(一)版本号控制概述中我们简介了一下版本号控制系统的概念,重点对版本号控制的三种类型进行了分析和对照,从本篇博文開始我们进入Git的世界,首先介绍一下Git实现版本号控制的原理. Git与SVN等其它版本号控制系统的最重要的一点差别在于,Git仅仅关心文件数据的总体是否变化,而不是关心文件内容的差异. SVN等原理分析        怎样理解呢?我们能够通过两种图进行比較,首先看一下SVN等其它版本号控制系统的原理图,例如以下所看到的: 在上述图片中,横向表示各个版本号,纵向

oracle学习入门系列之二 数据库基础知识

oracle学习入门系列之二 数据库基础知识 本篇蛤蟆要梳理下那些被淡忘的数据库基础知识,也许根本就没被人记住过.不管是哪种情况,该记住的必须记住,记不住就把他记下来吧. 首先问几个问题如下: 数据库基础知识是什么? 好吧,蛤蟆直接吐后而不亡,看目录开始吧. 本人邮箱:[email protected] 微信公众号:HopToad 欢迎各界交流 1      基本概念 概念就是概念,大伙对这些名词不要死磕,但是对定义一定要理解,理解方能领悟,领悟方能运用自如后创新. 1.1      数据 数据

如何快速的开发一个完整的iOS直播app(原理篇)

前言 大半年没写博客了,但我一直关注着互联网的动向,最近会研究很多东西,并分享,今年移动直播行业的兴起,诞生了一大批网红,甚至明星也开始直播了,因此不得不跟上时代的步伐,由于第一次接触的原因,因此花了很多时间了解直播,整理了直播的原理,当前只是原理篇,后续会持续发布实战篇,教你从零开始搭建一个完整的iOS直播app,希望能帮助到更多的人更快的了解直播. 一.个人见解(直播难与易) 直播难:个人认为要想把直播从零开始做出来,绝对是牛逼中的牛逼,大牛中的大牛,因为直播中运用到的技术难点非常之多,视频

Tomcat 原理篇

TOMCAT 原理篇一.Tomcat 组成(Tomcat 由以下组件组成) 1.server a) Server是一个Catalina Servlet容器: b) Server 可以包含一个或多个service组件(元素) 2.service a) server 包含了一个engine组件以及一个或多个connector组件: b) server 中可以配置多个service: 1. 第一个service处理所有Tomcat服务器接收到的web客户端请求: 2. 第二个service处理由Apa