前言
前面已经说了数据系统的概述了,关系模型是目前用得最多的数据模型,其中一个优点就是:有严格的数学理论根据。本文就是来讲解数据库中的各种关系运算的!本文不做数学概念的深入,只要理解相关的概念即可!
为什么我们要学习数据库关系运算?
学习和理解关系运算的机理,对于理解关系数据库中的数据查询机制有十分重要的意义。
我们可能知道多表查询的时候要消除重复多余的数据,那重复多余的数据怎么产生的呢??WHERE字句又是怎么筛选数据的呢??这些问题我们在关系运算中可以找到答案的。
学习数据库的关系运算,会让我们明白SQL语句是怎么执行的,是通过什么手段让我们得到想要的结果。
学习大纲
笛卡尔积
什么是笛卡尔积?
笛卡尔积简单来说就是两个集合相乘的结果。
为什么查询数据库会出现笛卡尔积
前面的博文已经说了,关系模型是关系模式的集合。
数据库中的两张表就相当于两个集合,当我们使用SELECT语句查询数据的时候,DBMS内部就是以集合相乘的运算得出结果
笛卡尔积的产生过程
我们发现:笛卡尔积的基数是每个集合的元组相乘!
得出来的数据内容是难以符合现实中的实际情况的
例子
为了更好地看见效果,我都会以实际的SQL语句来看效果,然后说明问题的。
em