SQL-BefehleInformatik-Buch, DatenbankWWW

Datenbankabfragen

Werden Abfragen an eine Datenbanksoftware gestellt, entstehen die Ergebnisse nicht durch schlichtes Filtern von Daten. Es können neue Relationen entstehen.

Grundsätzliche Syntax einer Abfrage:

SELECT [ALL|DISTINCT] <Attributliste>
    FROM <Referenztabelle>
    [WHERE <Bedingung>]
    [GROUP BY <Attributliste>]
    [HAVING <Bedingung>]

Projektion mit SELECT

πAutor, Titel(Buch) wird realisiert durch:

SELECT Autor, Titel
    FROM Buch;

Bestimmte Attribute (hier: Autor und Titel) einer Relation werden ausgewählt und als neue Relation verwendet.

Selektion mit WHERE

σAutor=„Helmut Kopka“(Buch) wird realisiert durch:

SELECT *
    FROM Buch
    WHERE (Autor="Helmut Kopka");

Bestimmte Tupel (hier: Alle Bücher von Helmut Kopka) einer Relation werden herausgefiltert.

kartesisches Produkt / Kombination von Relationen

BuchLeser wird realisiert durch:

SELECT *
    FROM Buch, Leser;

Das Ergebnis ist ohne zusätzliche Filterung nicht wirklich sinnvoll, da jedes Buch zusammen mit jedem Leser genau einmal auftaucht. D.h., es gibt Anzahl(Buch) * Anzahl(Leser) Tupel!

INNER JOIN

Relationen mit einem gemeinsamen Attribut lassen sich vereinigen.

Buch ⊗ Ausleihe wird realisiert durch:

SELECT *
    FROM Buch INNER JOIN Ausleihe 
    ON Buch.ID = Ausleihe.BuchID; 

Die Attribute der Relationen Buch und Ausleihe werden kombiniert, sodass eine neue Relation entsteht. Diese neue Relation hat sämtliche Attribute von Buch und von Ausleihe, wobei das Attribut ID nur einmal eingefügt wird, da beide IDs gleich sein müssen. In der neuen Relation sind also nur Bücher, die auch ausgeliehen sind.

Vereinigung, Durchschnitt, Differenz

Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. Weitere Information
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Noncommercial-Share Alike 4.0 International