Händler-Datenbank (SQL-Beispiel)/Projektion: Unterschied zwischen den Versionen
Kowa (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Kowa (Diskussion | Beiträge) |
||
| Zeile 23: | Zeile 23: | ||
Man beachte: Dabei entstehende Duplikate müssen ebenfalls entfernt werden (sofern die relationale Algebra nicht | Man beachte: Dabei entstehende Duplikate müssen ebenfalls entfernt werden (sofern die relationale Algebra nicht | ||
multimengenbasiert, sondern mengenbasiert ist). | multimengenbasiert, sondern mengenbasiert ist). | ||
== Beispiele bezüglich der [[Händler-Datenbank (SQL-Beispiel)|Händler-Datenbank]]== | |||
(Diese Beispiele wurden mit [[PostgreSQL]] und [[SQLite]] getestet.) | |||
Selektion aller Attribute der Tabelle <code>haendler</code> ([Händler-Datenbank (SQL-Beispiel)/Identität|Identität]]): | |||
<source lang="sql"> | |||
SELECT h_id, h_name, h_adresse | |||
FROM haendler | |||
</source> | |||
{| class="datatable-rt" | |||
! h_id !! h_name !! h_adresse | |||
|- | |||
| 1 || Maier || Königsbrunn | |||
|- | |||
| 2 || Müller || Königsbrunn | |||
|- | |||
| 3 || Maier || Augsburg | |||
|- | |||
| 4 || Huber || NULL | |||
|- | |||
| 5 || Schmidt || Hamburg | |||
|} | |||
<br/> | |||
Änderung der Position der Attribute: | |||
<source lang="sql"> | |||
SELECT h_name, h_adresse, h_id | |||
FROM haendler | |||
</source> | |||
<br/> | |||
Entfernen einer Spalte: | |||
<source lang="sql"> | |||
SELECT h_name, h_adresse | |||
FROM haendler | |||
</source> | |||
Das Ergebnis enthält keine Duplikate, da die Attribute <code>(h_name, h_adresse)</code> | |||
gemäß Datenmodell einen [[Schlüsselkandidat]] (''key candidate, ''unique key'') bilden. | |||
<br/> | |||
Entfernen zweier Spalten: | |||
<source lang="sql"> | |||
SELECT h_name | |||
FROM haendler | |||
</source> | |||
Das Ergebnis enthält den namen Maier doppelt, da es zwei Händler mit dem gleichen Namen git. | |||
<br/> | |||
<source lang="sql"> | |||
</source> | |||
<source lang="sql"> | |||
</source> | |||
<source lang="sql"> | |||
</source> | |||
<source lang="sql"> | |||
</source> | |||
==Quellen== | ==Quellen== | ||
Version vom 3. April 2019, 09:50 Uhr
Dieser Artikel wird derzeit von einem Autor gründlich bearbeitet. Die Inhalte sind daher evtl. noch inkonsistent.
Dieser Artikel erfüllt die GlossarWiki-Qualitätsanforderungen:
| Korrektheit: 4 (großteils überprüft) |
Umfang: 4 (unwichtige Fakten fehlen) |
Quellenangaben: 4 (fast vollständig vorhanden) |
Quellenarten: 5 (ausgezeichnet) |
Konformität: 5 (ausgezeichnet) |
Die nachfolgenden Beispiele können beispielsweise mit SQLite oder PostgreSQL getestet werden. Installieren Sie dazu die zugehörige Händler-Datenbank.
Die Projektionsfunktion
Eine Projektionsfunktion einer Relationalen Algebra
$ π_{f_1 \,\text{as}\, b_1, \ldots, f_k \,\text{as}\, b_k}: R \rightarrow R $
berechnet für jedes Tupel einer Relation ein neues Tupel: $f_i$ ist dabei eine Funktion, die für jedes Tupel $(v_1:a_1, \ldots, v_n:a_n) \in r$ jeweils einen Wert $f_i((v_1:a_1, \ldots, v_n:a_n))$ berechnet, der in das Ergebnistupel unter dem Namen $b_i$ eingefügt wird.
Man beachte: Dabei entstehende Duplikate müssen ebenfalls entfernt werden (sofern die relationale Algebra nicht multimengenbasiert, sondern mengenbasiert ist).
Beispiele bezüglich der Händler-Datenbank
(Diese Beispiele wurden mit PostgreSQL und SQLite getestet.)
Selektion aller Attribute der Tabelle haendler ([Händler-Datenbank (SQL-Beispiel)/Identität|Identität]]):
SELECT h_id, h_name, h_adresse
FROM haendler
| h_id | h_name | h_adresse |
|---|---|---|
| 1 | Maier | Königsbrunn |
| 2 | Müller | Königsbrunn |
| 3 | Maier | Augsburg |
| 4 | Huber | NULL |
| 5 | Schmidt | Hamburg |
Änderung der Position der Attribute:
SELECT h_name, h_adresse, h_id
FROM haendler
Entfernen einer Spalte:
SELECT h_name, h_adresse
FROM haendler
Das Ergebnis enthält keine Duplikate, da die Attribute (h_name, h_adresse)
gemäß Datenmodell einen Schlüsselkandidat (key candidate, unique key) bilden.
Entfernen zweier Spalten:
SELECT h_name
FROM haendler
Das Ergebnis enthält den namen Maier doppelt, da es zwei Händler mit dem gleichen Namen git.
Quellen
- Kowarschick (MMDB-Skript): Wolfgang Kowarschick; Vorlesung Multimedia-Datenbanksysteme – Sommersemester 2018; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2018; Quellengüte: 4 (Skript)
- Kowarschick (MMDB): Wolfgang Kowarschick; Vorlesung „Multimedia-Datenbanksysteme“; Hochschule: Hochschule Augsburg; Adresse: Augsburg; Web-Link; 2016; Quellengüte: 3 (Vorlesung), https://kowa.hs-augsburg.de/mmdb/mmdb-beispiele/haendler-datenbank/
