relation = math. for table, NOT from ER-model
A relation has two parts:
When the context is clear the attribute names can be ommitted, e.g.
the (unnamed) tuples of relation Age are { (John, 30), (Jane, 25) }
Relations are sets of tuples:
→ there is no preferred order for the tuples, and
→ there is no point in stating a fact more than once.
Operations on one or more relation always result in a relation (not some other kind of object).
Emp = { (Smith, Accounting), (Jones, Accounting), (Brown, Sales) }
Bonus = { (Accounting, 300), (Sales, 400), (Marketing, 0) }
Join Emp, Bonus = { (Smith, Accounting, 300), (Jones, Accounting, 300), (Brown, Sales, 400) }
Doctor = { (Semmelweiss), (Billroth), (Paracelsus) }
Treatment = { (Billroth, Smith), (Billroth, Jones), (Billroth, Brown), (Semmelweiss, Smith), (Paracelsus, Luther) }
Sick = { (Smith), (Brown) }
Divide Doctor, Treatment, Sick = { (Billroth) }
Interpretation e.g. doctors who treat all patients
in the supplier-parts example: suppliers (relation S) that supply (SP) all parts (P)