Wiki: Mathe und Info

Unterrichtsmaterialien für Mathematik und Informatik

Benutzer-Werkzeuge

Webseiten-Werkzeuge


info:sek-ii:q2:relationenalgebra:l2-grundoperatoren

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
info:sek-ii:q2:relationenalgebra:l2-grundoperatoren [2020-03-19 11:13] christian.weberinfo:sek-ii:q2:relationenalgebra:l2-grundoperatoren [2020-08-14 20:07] (aktuell) – [BetterBox#5] christian.weber
Zeile 1: Zeile 1:
 ====== Lektion 2: Grundlegende Operatoren ====== ====== Lektion 2: Grundlegende Operatoren ======
  
-  * FIXME Selektion, Projektion, kartesisches Produkt, Join+  * FIXME kartesisches Produkt, Join
  
 ===== Projektion ===== ===== Projektion =====
 Die Projektion kann auch Attributbeschränkung genannt werden. Sie extrahiert einzelne Attribute aus der ursprünglichen Attributmenge und ist somit als eine Art Selektion auf Spaltenebene zu verstehen, das heißt, die Projektion blendet Spalten aus. Wenn $\beta$ die Attributliste ist, schreibt man $\pi_\beta(R)$. $\beta$ heißt auch Projektionsliste. Duplikate in der Ergebnisrelation werden eliminiert. Die Projektion kann auch Attributbeschränkung genannt werden. Sie extrahiert einzelne Attribute aus der ursprünglichen Attributmenge und ist somit als eine Art Selektion auf Spaltenebene zu verstehen, das heißt, die Projektion blendet Spalten aus. Wenn $\beta$ die Attributliste ist, schreibt man $\pi_\beta(R)$. $\beta$ heißt auch Projektionsliste. Duplikate in der Ergebnisrelation werden eliminiert.
  
-==== Definition ==== +<grid> 
 +<bbox w3|**Definition:**>
 Sei $R$ eine Relation über $\{A_1, ..., A_k\}$ und $\beta \subseteq \{A_1, ..., A_k\}$. Sei $R$ eine Relation über $\{A_1, ..., A_k\}$ und $\beta \subseteq \{A_1, ..., A_k\}$.
  
Zeile 13: Zeile 13:
  
 Hierbei heißt $t_\beta := (\beta)$, das heißt, die Tupel erhalten nur die Attribute aus der Attributliste $\beta$. Hierbei heißt $t_\beta := (\beta)$, das heißt, die Tupel erhalten nur die Attribute aus der Attributliste $\beta$.
 +</bbox>
 +<bbox w3|**Beispiel:**>
 +{{:info:sek-ii:q2:relationenalgebra:l2-projection-tables.png?nolink&400|}}
 +</bbox>
 +<bbox w3|**SQL-Code:**>
 +$\pi_{A,B}(R)$
 +<code sql>
 +SELECT A, B
 +FROM R;
 +</code>
 +
 +$\pi_{A}(R)$
 +<code sql>
 +SELECT A
 +FROM R;
 +</code>
 +</bbox>
 +</grid>
  
 ===== Selektion ===== ===== Selektion =====
 Bei der Selektion kann man mit einem Vergleichsausdruck $\gamma$ (Prädikat) eine Auswahl von Tupeln festlegen, die in die Ergebnismenge aufgenommen werden sollen. Es werden also Tupel ("Zeilen") ausgeblendet. Man schreibt $\sigma_{\gamma}(R)$. $\gamma$ heißt dann Selektionsbedingung. Bei der Selektion kann man mit einem Vergleichsausdruck $\gamma$ (Prädikat) eine Auswahl von Tupeln festlegen, die in die Ergebnismenge aufgenommen werden sollen. Es werden also Tupel ("Zeilen") ausgeblendet. Man schreibt $\sigma_{\gamma}(R)$. $\gamma$ heißt dann Selektionsbedingung.
  
-==== Definition ==== +<grid> 
 +<bbox w3|**Definition:**>
 Sei $R$ eine Relation. Sei $R$ eine Relation.
  
Zeile 25: Zeile 43:
 $\gamma(t)$ bezeichnet dabei eine Formel. Diese kann bestehen aus: $\gamma(t)$ bezeichnet dabei eine Formel. Diese kann bestehen aus:
  
-  * Konstantenselektionen $Attribut~\theta~Konstante$, wobei $\thetaein üblicher (passender) Vergleichsoperator ist. +  * Konstantenselektionen, z.B. $A~=~\text{"Test"}oder $C~\leq~12
-  * Attributselektionen $Attribut~\theta~Attribut+  * Attributselektionen, z.B. $A > C
-  * Eine Verknüpfung einer Formel mit logischen Prädikaten $\wedge\vee, \neg$ (Klammerung wie üblich).+  * Verknüpfungen mit logischen Prädikaten, z.B. $\neg(A~\geq~5~\wedge~B~=~\text{"Test"})$ 
 + 
 +</bbox> 
 +<bbox w3|**Beispiel:**> 
 +{{:info:sek-ii:q2:relationenalgebra:l2-selection-tables.png?nolink&400|}} 
 +</bbox> 
 +<bbox w3|**SQL-Code:**> 
 +$\sigma_{A=1}(R)$ 
 +<code sql> 
 +SELECT * 
 +FROM R 
 +WHERE A=1; 
 +</code> 
 + 
 +$\sigma_{C>6}(R)
 +<code sql> 
 +SELECT * 
 +FROM R 
 +WHERE C>6; 
 +</code> 
 +</bbox> 
 +</grid>
info/sek-ii/q2/relationenalgebra/l2-grundoperatoren.1584612784.txt.gz · Zuletzt geändert: 2020-03-19 11:13 von christian.weber