1
00:00:00,700 --> 00:00:05,090
下一个知识点就是函数在集合上的限制
2
00:00:08,290 --> 00:00:10,200
符号可以这样来
3
00:00:10,210 --> 00:00:16,640
F然后一个往下的箭头A
4
00:00:16,650 --> 00:00:19,520
意思就是说F里面的元素
5
00:00:20,120 --> 00:00:23,980
它的第1坐标是在A里面的
6
00:00:27,030 --> 00:00:30,380
比如说,右边 X,2
7
00:00:31,120 --> 00:00:34,260
这是一对,y,1,一对,这个集合
8
00:00:35,370 --> 00:00:38,150
然后在X集合上做限制
9
00:00:39,230 --> 00:00:41,530
也就是说,第1坐标
10
00:00:41,540 --> 00:00:44,850
只能是X这里面的集合里面的元素
11
00:00:44,860 --> 00:00:46,650
实际上只有这个
12
00:00:46,820 --> 00:00:48,510
所以X,2
13
00:00:49,530 --> 00:00:54,890
这个跟我们后面投影
14
00:00:56,050 --> 00:01:00,100
select是类似的
15
00:01:00,590 --> 00:01:05,560
哪个字段,类似的
16
00:01:05,570 --> 00:01:06,680
X,2,Z,2
17
00:01:06,690 --> 00:01:13,730
18
00:01:14,060 --> 00:01:16,060
XYZ都有
19
00:01:16,690 --> 00:01:19,170
所以这里面一个都没有少
20
00:01:19,760 --> 00:01:21,100
都照搬过来了
21
00:01:21,110 --> 00:01:28,320
下面,G5,工号1,姓名罗玉凤,地址
22
00:01:29,320 --> 00:01:31,540
然后我们针对姓名、地址
23
00:01:31,550 --> 00:01:33,810
这两个来做一个限制
24
00:01:34,690 --> 00:01:36,960
工号就没有了,姓名罗玉凤
25
00:01:36,970 --> 00:01:38,360
地址,纽约法拉盛
26
00:01:40,360 --> 00:01:41,510
如果后面是空集
27
00:01:42,190 --> 00:01:43,070
那就空集了
28
00:01:43,480 --> 00:01:46,350
因为空集没东西,没有元素
29
00:01:49,190 --> 00:01:50,900
意思就是没有任何一个
30
00:01:53,030 --> 00:01:56,660
这个集合里面没有一个元素能够被选中
31
00:01:56,670 --> 00:01:56,740
32
00:02:02,100 --> 00:02:06,550
这样来,我们结合刚才讲的
33
00:02:06,840 --> 00:02:10,700
你看,F和G兼容
34
00:02:10,710 --> 00:02:13,010
我们可以这样来定义
35
00:02:13,380 --> 00:02:18,700
当F、G的
36
00:02:20,720 --> 00:02:23,750
用这个F和G的定义域的交集
37
00:02:23,760 --> 00:02:31,370
来限制这个F,和用F和G的定义域的
38
00:02:31,380 --> 00:02:32,370
交集来限制G
39
00:02:32,380 --> 00:02:35,290
结果是一样的,也就是说
40
00:02:36,140 --> 00:02:38,020
刚才那个兼容的意思
41
00:02:38,030 --> 00:02:40,180
就可以这样描述
42
00:02:40,550 --> 00:02:45,550
两个定义的交集
43
00:02:47,760 --> 00:02:50,340
以交集来筛选
44
00:02:52,260 --> 00:02:56,110
集合里面的元素,得到的结果是相同的
45
00:02:56,700 --> 00:02:58,020
那么这两个就兼容
46
00:03:03,650 --> 00:03:08,320
往往我们后面我们用一些表也好
47
00:03:08,770 --> 00:03:09,960
类也好
48
00:03:10,920 --> 00:03:13,430
往往这两个交集就是一个ID
49
00:03:14,360 --> 00:03:18,200
比如说,员工,姓名什么的
50
00:03:18,210 --> 00:03:19,280
然后里面有部门ID
51
00:03:19,370 --> 00:03:21,240
部门里面也有一个部门ID
52
00:03:22,210 --> 00:03:23,480
只有这两个字段
53
00:03:23,570 --> 00:03:26,440
两个元素是一样的
54
00:03:28,570 --> 00:03:31,820
那么这两个就可以兼容
1
00:00:00,290 --> 00:00:03,040
下一个知识点就是函数的组合
2
00:00:04,450 --> 00:00:06,120
这里的组合,英语
3
00:00:06,130 --> 00:00:07,000
还是Composition
4
00:00:07,090 --> 00:00:08,790
跟UML里面
5
00:00:08,800 --> 00:00:10,460
那个是一个词
6
00:00:10,630 --> 00:00:13,910
但是意思有些不一样
7
00:00:14,040 --> 00:00:15,230
它这里指的是什么
8
00:00:16,350 --> 00:00:17,940
连续应用函数
9
00:00:17,950 --> 00:00:20,180
就是说两个函数叠加在一起
10
00:00:24,890 --> 00:00:26,930
那么头一个函数的值域
11
00:00:26,940 --> 00:00:29,920
就成为下一个的定义域
12
00:00:30,780 --> 00:00:35,920
比如说,g组合f,我们用方块这个来表达
13
00:00:36,890 --> 00:00:38,980
结果就相当于什么
14
00:00:41,900 --> 00:00:44,950
f(a)
15
00:00:44,960 --> 00:00:48,680
然后再g,这是第1坐标
16
00:00:49,050 --> 00:00:53,460
第2坐标是这个
17
00:00:53,820 --> 00:00:56,580
然后后面是条件
18
00:00:56,910 --> 00:00:59,780
a是在这个f的定义域里面的
19
00:01:01,670 --> 00:01:07,940
而f(a)就是g的定义域
20
00:01:07,950 --> 00:01:16,610
也就是说,f(a)是a施加f函数之后得到的值
21
00:01:17,180 --> 00:01:23,330
那么这个值就属于g的定义域里面
22
00:01:24,310 --> 00:01:25,890
这样两个就接得上了
23
00:01:28,900 --> 00:01:31,200
比如说,编号
24
00:01:32,010 --> 00:01:33,770
经过f,工号
25
00:01:33,780 --> 00:01:37,080
你看右边这个,f是编号,工号,姓名
26
00:01:37,090 --> 00:01:38,720
然后,姓名,职位,工作
27
00:01:39,150 --> 00:01:40,770
28
00:01:43,330 --> 00:01:48,170
g组合f,那就先应用f了
29
00:01:48,540 --> 00:01:49,890
现在你看编号
30
00:01:50,520 --> 00:01:53,780
然后f(编号)
31
00:01:55,200 --> 00:01:56,070
然后再g
32
00:01:58,720 --> 00:02:02,360
这样把它套上来
33
00:02:03,720 --> 00:02:04,040
34
00:02:06,540 --> 00:02:10,720
f(编号)实际上就是工号
35
00:02:10,730 --> 00:02:16,950
编号-工号,g(工号)就是99
36
00:02:17,530 --> 00:02:18,320
实际上就相当于
37
00:02:19,070 --> 00:02:23,540
f相当于把编号到工号
38
00:02:23,550 --> 00:02:25,040
姓名到员工姓名,职位到工作
39
00:02:25,050 --> 00:02:26,540
这是第一个转换
40
00:02:27,640 --> 00:02:30,550
g就相当于把工号转到999
41
00:02:31,500 --> 00:02:32,500
第2个转换
42
00:02:37,850 --> 00:02:39,290
它的用途
43
00:02:39,640 --> 00:02:42,100
一个就是重命名
44
00:02:42,430 --> 00:02:44,220
给定元组的属性
45
00:02:45,040 --> 00:02:47,470
编号转成工号,就转过来
46
00:02:47,480 --> 00:02:49,390
转换类型一样的
55
00:03:32,430 --> 00:03:33,540
就可以并起来