Halmazműveletek


Ha e műveleteket alkalmazzuk, akkor a relációkra néhány feltételnek teljesülnie kell:

  1. Az R és S relációk sémájának ugyanazokat az attribútumhalmazokat kell tartalmaznia.
  2. Az R és S relációk oszlopait rendezni kell úgy, hogy az R reláció i-edik attribútumának a neve megegyezzen az S reláció i-edik attribútumával, vagyis az attribútumok sorrendje azonos legyen mindkét reláció esetén.
R:
A B
1 4
2 5
3 6
S:
A B
2 5
6 2
7 9

Unió

RS, azon sorok halmaza, amelyek vagy az R-ben, vagy az S-ben vannak. Egy elem csak egyszer szerepel az egyesítésben, még akkor is, ha jelen van az R-ben is és az S-ben is.
RS:
A B
1 4
2 5
3 6
6 2
7 9

Metszet (Intersection)

RS, R és S metszete azon sorok halmaza, amelyek az R-ben is és az S-ben is benne vannak.
RS:
A B
2 5

Különbség (Difference)

R-S, R és S különbsége azon sorok halmaza, melyek benne vannak R-ben, de nincsenek benne S-ben. Megjegyzendő, hogy R-S nem ugyanaz, mint S-R, mivel ez utóbbi azon sorok halmaza, melyek benne vannak S-ben, de nincsenek R-ben.
R-S:
A B
1 4
3 6

Megjegyzés:

A metszet kifejezhető a különbség művelet segítségével.
RS= R – (R – S)

Tehát, ha R és S két, azonos sémával rendelkező reláció, akkor R és S metszete (RS) kiszámolható úgy, hogy először kiszámoljuk a T relációt, amelyben mindazok a sorok benne vannak, amelyek benne vannak R-ben is, de S-nek nem sorai, azaz kivonjuk az R-ből az S relációt. Ezután kivonjuk az R-ből a T relációt, ezáltal R-nek azokat a sorait kapjuk, amelyek S-ben is benne vannak, tehát megkapjuk R és S metszetét.

Példa:

R:
A
1
2
3
4
S:
A
2
4
6
8
T=R-S:
A
1
3
R-T:
A
2
4