Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Datenbanksysteme für hörer anderer Fachrichtungen

Ähnliche Präsentationen


Präsentation zum Thema: "Datenbanksysteme für hörer anderer Fachrichtungen"—  Präsentation transkript:

1 Datenbanksysteme für hörer anderer Fachrichtungen
SQL - Zusammenfassung Datenbanksysteme für hörer anderer Fachrichtungen

2 SQL-Zusammenfassung Gerüst einer SQL-Anfrage
Duplikate mit DISTINCT eliminieren (hoher Rechenaufwand!) Reihenfolge der Statements in der Query muss eingehalten werden Ziffern geben Reihenfolge der Abarbeitung an

3 SQL-Zusammenfassung Prädikate kombinierbar (AND, OR, NOT)
Where-Klausel Prädikate kombinierbar (AND, OR, NOT) Einsatz von Vergleichsoperatoren Strings müssen in einfachen Anführungszeichen stehen Liefert nur Tupel, für die die Bedingung gleich true ist Suche mit Platzhaltern (Wildcards): „_“  beliebiges Zeichen + LIKE „%“  beliebige Zeichenkette + LIKE Beispiel: SELECT * FROM Student WHERE Name LIKE ‚K%‘ AND Semster > 9;

4 SQL-Zusammenfassung Repräsentieren Werte, die
NULL-Werte Repräsentieren Werte, die unbekannt, nicht verfügbar oder nicht anwendbar sind SQL hat eine dreiwertige Logik true unknown  bei AND-Verknüpfung gesamte Bedingung unknown false In Gruppierung als eigene Gruppe dargestellt

5 SQL-Zusammenfassung Kreuzprodukt (wenig sinnvoll)
Anfragen über mehrere Relationen Kreuzprodukt (wenig sinnvoll) Joins (stehen in der WHERE-Klausel, bevorzugte Variante) Namenskonflikte auflösen Beispiel: SELECT s.Name, v.Titel FROM Studenten s, hoeren h, Vorlesungen v WHERE s.MatrNr = h.MatrNr AND h.VorlNr = v.VorlNr

6 SQL-Zusammenfassung Mengenoperationen Vereinigung UNION (Duplikate werden automatisch eliminiert!) Schnitt INTERSECT Differenz EXCEPT Voraussetzung: Gleiches Schema der verknüpften Relationen! Beispiel: (SELECT Name FROM Assistenten) UNION (SELECT Name FROM Professoren)

7 SQL-Zusammenfassung Sortieren des Ausgabetupel über ORDER BY
Sortierung Sortieren des Ausgabetupel über ORDER BY Aufsteigend (ASC) – Defaultwert Absteigend (DESC)

8 SQL-Zusammenfassung Mehrere SELECT-Statements in einer Anfrage
Geschachtelte Anfragen Mehrere SELECT-Statements in einer Anfrage Inneres Anfrageergebnis wird in äußerer Anfrage verwendet Zwei Arten geschachtelter Anfragen Korreliert (Unteranfrage bezieht sich auf äußere Anfrage) Unkorreliert (Unteranfrage bezieht sich nur auf „eigene“ Attribute) Unkorrelierte Anfragen sind effizienter (Unteranfrage wird nur einmal ausgewertet) Beispiele: SELECT p.Name FROM Professoren p WHERE NOT EXISTS(SELECT * FROM Vorlesungen v WHERE v.gelesenVon = p.PersNr);

9 SQL-Zusammenfassung Durchschnitt AVG(*) Maximum MAX(*) Minimum MIN(*)
Aggregatfunktionen und Gruppierung Durchschnitt AVG(*) Maximum MAX(*) Minimum MIN(*) Summe SUM(*) Anzahl COUNT(*) Alle in der SELECT-Klausel gelisteten Attribute müssen auch in der GROUP BY-Klausel stehen! Beispiel: SELECT gelesenVon, Name, SUM(SWS) FROM Vorlesungen, Professoren WHERE gelesenVon = PersNr AND Rang = `C4` GROUP BY gelesenVon, Name HAVING AVG(SWS) >= 3;

10 SQL-Zusammenfassung Temporäre Tabellen Verwendung einer Ergebnismenge aus einer Unteranfrage Umbenennung dieser in eine „temporäre Tabelle“ Beispiel: SELECT tmp.MatrNr,tmp.Name,tmp.VorlAnzahl FROM (SELECT s.MatrNr, s.Name, COUNT(*) AS VorlAnzahl FROM Studenten s, hoeren h WHERE s.MatrNr = h.MatrNr GROUP BY s.MatrNr, s.Name HAVING COUNT(*) > 2) tmp;

11 SQL-Zusammenfassung Inner join Left, right oder full outer join
Joins Inner join Left, right oder full outer join Beispiel: SELECT p.PersNR,p.Name,f.PersNr from Professoren p, prüfen f left outer join on p.PersNr=f.PersNR

12 SQL-Zusammenfassung Insert into zum Einfügen von Tupeln durch Anfrage
Veränderung am Datenbestand Insert into zum Einfügen von Tupeln durch Anfrage Bsp: INSERT INTO hören SELECT MatrNr, VorlNr FROM Stundenten, Vorlesungen WHERE Titel=‚Logik‘ Import zum Einfügen von Tupeln aus Dateien Delete und Update zum Löschen und Verändern von Datensätzen (nur Inhalt) DROP und ALTER zum Verändern des Schemas (Löschen ganzer Tabellen bzw. Verändern von Spalten)

13 SQL-Zusammenfassung Sichten Oft verwendet, um Anfragen übersichtlicher zu gestalten Stellen eine Art „virtuelle Relation“ dar Für den Datenschutz und Statistik verwendet spart Speicherplatz, kostet Rechenzeit im vergleich zu CREATE TABLE Bsp: CREATE VIEW prüfenSicht AS SELECT MatrNr, VorlNr, PersNr FROM prüfen

14 SQL-Zusammenfassung Webressource


Herunterladen ppt "Datenbanksysteme für hörer anderer Fachrichtungen"

Ähnliche Präsentationen


Google-Anzeigen