00:00
好,讲这个范式之前呢,我们还要讲一个什么呢?哎,讲一下这个函数依赖。呃,还为什么讲这个范式要用到这个函数依赖呢啊,因为这个范式呢,都跟这个函数依赖呢,有一定的这个关系啊,所以说我们先把这个概念先给大家少了哈。一说到函数,大家就想起来这个高等数学里面是吧?而且据说大家这个学的这个数学学的呀都不错,我们来看一下啊,学的怎么样。那首先呢,这有一张表啊,一张表,这张表呢,大家应该不陌生是吧?啊,学号姓名啊,系系主任,课名,分数,好像又回到了大学那种感觉是吧?啊大学那种感觉,高等数学啊,英语什么普通化学。满满的回忆是吧,啊,曾经也是这个拿过很多高分的是吧,而且据说咱班学的这个好多人拿了各种奖学金。来往下看啊,首先呢,是完全函数依赖什么含义。咔,一上那个。全场鸦雀无声,看看能不能想起来点啥啊?
01:02
这个呢,就是完全F数依赖啊,设这个SY啊为这个呃,关系R的两个属性集合啊,S撇呢是S真子集,存在S到Y啊,单队的每一个S撇呢,得得得说一大堆,我估计啊,能听懂的同学不太多啊,这存在一个标准的数学函数。我不看这个啊,翻译成这个人类能识别的语言是吧?啊,这属于机器语言,人类识别的语言怎么翻译呢?比如说这里面有学号,还有这个课名,对吧,学号课名他能够推出来这个分数。那你想想吧,你怎么推呀?比如说张三,他的高等数学95分。能推出来吧,是吧,哎,肯定能推出来,比如说那张三啊,就是这是王强啊,这是王,哎,不是王强,这是小明对吧?哎,小明的大学英语多少分,你说我只要知道他和他,我就能推出来啊,他的分数从这个表里面就能查到啊,查询得到。但是如果单独用学号就推出来分数什么意思,我只告诉我只我只告诉你说王强学号是这个。
02:06
它的分数是多少?因为啊,不是王强是小明啊,小明这个王强辛主任小明他的这个分数是多少。那小明他好几科呢,他可不止一科啊,他有数学,有英语,有化学对吧,那你到底问我哪一个学科,所以说你这块你推不出来啊,那你说分数呢,是完全依赖于学号和课程。比如这个分数,它取决于前面这两列。这两列缺一不可。这两个共同决定了能推测出分数,你比方说给一个课名,给你一个高等数学,那你也不知道是谁的啊,高等数学谁谁谁的分数是95啊,对吧,啊,这不清楚啊,所以说这两个唯一决定它。那我们就可以说这样,比如说A和B能得出C。A和B,能得出CA和B。能得出C,但是AB单独推出来C,比如说任何一个人他都推不出来这个,那么就说C完全依赖于AB。
03:08
啊,完全依赖于它的啊,就是这么一个叫函数,完全函数依赖哈,好,那再来什么叫部分函数依赖呢?咔,一上这个啊,又看不懂了啊没关系,直接翻译过来。部分函数依赖呢,就是学号和课程,学号和课程。能够推出姓名。能够推出新名没问题呀,啊,肯定没问题呀,因为我们直接通过学号我就知道啊,这个学号它对应的是这个人叫什么名对吧?啊唯一标识。啊,因为其实呢,直接可以通过学号退出姓名。那就说明这个姓名叫部分还依赖于学号课程。比如说这个姓名啊,它只依赖于你这个学号和课程当中的一个。那就是相当于是部分一代嘛,比如说你把这个课程干掉,我也能推出来姓名。那你就是一部分嘛,不是所有的哈,你像我这个是缺一不可,完全函数一站式缺一不可。
04:06
那就是通过A和B能得出C,通过A也能得出C,或者通过B也能得出C,你说任何一个就能推出来这个。那么就说C部分依赖于AB。这是A,这是B,这个呢是C,那我们通过A就能得出这个C,那你这个B呢,就没有必要啊,没有必要存在,那其实呢,它就是部分函数依赖啊,就这么一个含义,再往下呢,叫传递函数依赖。咔,一大堆。来翻译成人类的语言,叫学号,能够推出姓名,看啊学号。对吧,小明他是哪一个系的呢?哎,他是经济系的没问题,然后呢,系名能够推出系主任啊,你是这个经济系的,那经济系的系主任是谁呢?哎,系理系主任是王强对吧?啊是王强,但是但是记住了啊,系主任推不出学号,你往前推,你想推他。
05:03
根本推不了,你说王强我想推这个哪个学号。那他对着N多个学生呢,对吧?啊,这个系里面有N多个学生啊,所以说推出来,所以说系主任呢,主要叫依赖于姓名啊,这种情况呢,可以说系主任呢,传递依赖于学号。你说系主任他这一列。它是传递依赖于他们。比如说它能够推出这样。这一列能够推出对应的戏名,系名呢,又能推出它,但是你反着往回推,推不了。这就叫传递函数依赖。那逻辑呢,就是能得出BB,能得出C,但是C得出来A,能得出bab,能得出CC,往上反不行啊,这就要传递函数依赖,所以说呢,先把这三个概念呢啊稍微理解一下啊,完全函数依赖呢,就是AB得出C,而且是C呢,是完全依赖于A和B,那部分函数依赖呢,就是A和B得出C,但是呢,A也能得出C,或者呢是B也能得出C啊某一个就可以,那就叫部分函数依赖,那这个传递函数依赖呢,就是A得到B。
06:15
B得到CC呢?反过来不行。
我来说两句