数据库 Bags 概念和操作

1. 概念

1.1 Set

Set 是一个没有重复数据的集合。Set 操作的参与方和结果里都没有重复元素。

1.2 Bags

Bags 是可以有重复数据的集合。数据库中操作一般是 Bag 操作。

2 Bags 操作

2.1 Select

C1 C2 C3
1 2 5
3 4 6
1 2 7
1 2 8

select C1, C2 的结果

C1 C2
1 2
3 4
1 2
1 2

2.2 UNION ALL

假设记录 t 在关系 S 中出现 n 次,在关系 R 中出现 m 次,那么在 S UNION ALL R 中出现 n + m 次。

S:(1,2) 出现 3次, (3,4)出现1次

C1 C2
1 2
3 4
1 2
1 2

R: (1,2)出现1次, (3,4)出现2次, (5,6)出现1次

C1 C2
1 2
3 4
3 4
5 6

S UNION ALL R 的结果: (1,2) 出现 4次, (3,4)出现3次, (5,6)出现1次

C1 C2
1 2
3 4
1 2
1 2
1 2
3 4
3 4
5 6

2.2 UNION

和 UNION ALL 的结果一样

2.3 Intersection

假设记录 t 在关系 S 中出现 n 次,在关系 R 中出现 m 次,那么在 S INTERSECTION R 中出现 MIN(n, m) 次。

S:(1,2) 出现 3次, (3,4)出现1次

C1 C2
1 2
3 4
1 2
1 2

R: (1,2)出现1次, (3,4)出现2次, (5,6)出现1次

C1 C2
1 2
3 4
3 4
5 6

S INTERSECTION R 的结果: (1,2) 出现 1次, (3,4)出现1次

C1 C2
1 2
3 4

2.4 Difference(MINUS)

假设记录 t 在关系 S 中出现 n 次,在关系 R 中出现 m 次,那么在 S INTERSECTION R 中出现 n-m 次。

S:(1,2) 出现 3次, (3,4)出现1次

C1 C2
1 2
3 4
1 2
1 2

R: (1,2)出现1次, (3,4)出现2次, (5,6)出现1次

C1 C2
1 2
3 4
3 4
5 6

S MINUS R 的结果: (1,2) 出现 2 次

C1 C2
1 2
1 2

你可能感兴趣的:(hive,hive)