5. Relationsalgebra Flashcards
Vad innebär unionskompabilitet i relationsalgebra? (3)
De tabeller som opererar måste ha:
- samma grad (antal kolumner)
- attribut som motsvarar varandra måste ha samma domän (datatyp)
- attribut som motsvarar varandra måste ha samma namn
Vilka är de unionskompatibla operatorerna?
Union
Snitt
Differens
Vad gör UNION?
Kombinerar rader från två tabeller och tar med alla
rader från båda tabellerna
Vad gör SNITT (intersect)?
Kombinerar rader från två tabeller och tar med alla rader som
förekommer i båda tabellerna
Vad gör DIFFERENS?
Kombinerar två tabeller och tar med alla rader som finns
i den första men inte i den andra.
Vilka är de primitiva operatorerna? (5)
Projektion
Selektion
Union
Differens
Kryssprodukt
Vilka är de icke-primitiva operatorerna? (5)
Theta-join
Ekvi-join
Naturlig join
Snitt
Division
Hur är syntaxen för unära operatorer (som tar en relation som operand)?
Operator, kolumn/villkor, Relation
Hur är syntaxen för binära operatorer (som tar två relation som operand)?
Relationsnamn, operator, Relation
Vad gör projektion?
Vertikal delmängd av attribut - man väljer ut ett antal kolumner
Vad gör selektion?
Horisontell delmängd av rader - man väljer ut ett antal rader baserat på något villkor
Vad gör kryssprodukt (kartesisk produkt)?
A × B (eller ibland A * B) ska tolkas som:
Alla rader i A kombinerade med alla rader i B
Vad gör Theta-JOIN?
Ny tabell genom att matcha kolumnvärden från två tabeller.
Vad är en Equi-JOIN?
En Theta-JOIN, men när jämförelsevillkoret är “=” är det “equi-JOIN”
Vad gör Natural JOIN?
Kombinerar två tabeller och väljer endast ut de
radkombinationer som har samma värde på
alla kolumner med samma namn (och datatyp).
(inga dubbletter)
Hur kan tilldelning användas? (2)
- Dela upp satser
- Ändra namn på tabell/kolumner
Nämn fyra aggregatfunktioner:
MIN, MAX, COUNT, SUM
Hur är syntaxen för aggregatfunktioner?
F aggregatfunktion(kolumn) Tabell