Relationale Datenbanken IV

Slides:



Advertisements
Ähnliche Präsentationen
ER-Datenmodell und Abfragen in SQL
Advertisements

Datenbanksysteme für FÜ SS 2000 Seite Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.
Datenbanksysteme für FÜ WS2004/05 SQL1 - 1 Worzyk FH Anhalt SQL 1 Aussagen über Tabelleninhalte Aussagelogik Äquivalenzen Select Where.
Telefonnummer.
Bauinformatik II Softwareanwendungen 1
Systemüberblick Beispiele: Microsoft Access Oracle Ingres Informix
Kapitel 3: Das Relationenmodell
Inner Joins.
Alternativen und Muster. Alternativen Gegeben ist eine Tabelle in der ein Attribut der Tabelle Buecher Gruppe genannt wurde. So gibt es unter anderem.
SQL als Abfragesprache
Auswertung im GTDS fixe Abläufe für Standard-Aufgaben Mamma-Auswertung
Otto-von-Guericke-Universität MagdeburgGamal Kassem Übung 7 Reports mit Datenbankzugriff.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
SQL 2 Order by null Aggregatfunktionen group by Join subselect.
Abfragen – Tipps und Tricks Buch S102ff (Informatik I, Oldenbourg-Verlag) Nach einer Vorlage von Dieter Bergmann.
SQL in Visual FoxPro. © 1999 TMN-Systemberatung GmbH SQL Historie n SQL - Structured Query Language n In den 70er Jahren von IBM entwickelt n 1986 zum.
SQL-Datentypen INTEGER
AWA 2007 Natur und Umwelt Natürlich Leben
Übung 1: SQL Übungen finden bei Bedarf anstelle der Vorlesungen statt
Datenbankentwicklung IV-LK
20:00.
Datenbanken Mehr als Tabellen.
Datenbankentwicklung IV-LK
Datenbanken Mehr als Tabellen. Datenbank Abfragen mit SQL: Eine Tabelle filtern Tabellen realer Datenbanken können sehr viele Informationen speichern:
Relationale Datenbanken II
Relationale Datenbanken III
Datenbanken?.
Betrieb von Datenbanken Marco Skulschus & Marcus Wiederstein
Syntaxanalyse Bottom-Up und LR(0)
Auslegung eines Vorschubantriebes
SS 2004 Datenbanken 4W Mi 13:30 – 15:00 G 2.30 Vorlesung #7 SQL (Teil 2)
WS 2013/14 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #5 SQL (Teil 2)
WS 2007/08 Datenbanksysteme Mi 17:00 – 18:30 R Vorlesung #5 SQL (Teil 2)
Befehle in SQL Erläuterungen.
Datenbanksysteme für hörer anderer Fachrichtungen
Einführung in Datenbankmodellierung und SQL
WS 2011/12 Datenbanksysteme Fr 15:15 – 16:45 R Vorlesung #5 SQL (Teil 2)
Aggregatsfunktion SQL = Structured Query Language.
Symmetrische Blockchiffren DES – der Data Encryption Standard
1 Gruppierung, Aggregierung und Sortierung (2) Abarbeitungsmodell bei Gruppierung: Werte from- und where-Klauseln aus wie bisher (Bildung von Kreuzprodukt.
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
SQL - Structured Query Language AIFB SS (1/9) Join-Operationen in SQL-92(1/9) Syntax einer Join-Operation: join-op := CROSS JOIN | [NATURAL]
Aggregatsfunktion mit Group by und having SQL = Structured Query Language.
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Analyseprodukte numerischer Modelle
Relationale Datenbanken IV
Sachbezugswerte 2007 (SV-Entgeltverordnung) Sachbezugswerte für freie Verpflegung FrühstückMittagessenAbendessen 1,50 2,67 Monatlicher Wert Verpflegung.
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Verdichten von Daten mit Gruppenfunktionen
Datenbanksysteme II Vorlesung WS 2006 / 2007 Paul Manthey
Structured Query Language
Structured Query Language
Länder und Sprachen.
1 Tagesüberblick 4 Lösung Hausaufgabe/Fragen Mustervergleiche.
Vorlesung #5 SQL (Teil 2).
Numbers Greetings and Good-byes All about Me Verbs and Pronouns
2 Auswählen und Sortieren von Daten. 2-2 Filtern von Zeilen mit Selektion "…suche alle Angestellten in Abteilung 10" EMP EMPNO ENAME JOB... DEPTNO 7839KINGPRESIDENT.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Wie.
1 Tagesüberblick 5 Lösung Hausaufgabe/Fragen Assoziative Felder Funktionen zu Variablenbehandlung.
RelationentheorieObjektorientierte Datenbanken  AIFB SS Anfragen auf Sammlungen(1/29) OQL besteht aus einer Menge von Anfrageausdrücken, die.
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
WS 2014/15 Datenbanksysteme D0 15:15 – 16:45 R Vorlesung #6 SQL (Teil 3)
Datenbanken abfragen mit SQL
Abfragen Wiederholung Manuel Friedrich Schiller-Gymnasium Hof.
Sortierte Datenbankabfragen
Vorlesung #5 SQL (Teil 2).
Wirtschaftsinformatik
Nutzung und Modellierung von Datenbanken
(Structured Query Language)
 Präsentation transkript:

Relationale Datenbanken IV Mit SQL Datenbankeinträge heraussuchen MP 1ABe Ws 2013

Beispiel Tabellen Reisebüro

Grundstruktur einer Suchabfrage SELECT FROM WHERE ORDER BY

Grundidee Suchabfragen führen die gegebenen Tabellen in neue Tabellen über. Die neuen Tabellen enthalten genau die gesuchte Information.

SELECT Name,Preis FROM Reiseziel WHERE Preis < 3000; Beispiel SELECT Name,Preis FROM Reiseziel WHERE Preis < 3000;

Was kann hinter FROM stehen? Der Name einer einzelnen Tabelle Die Namen mehrerer Tabellen, durch Operatoren voneinander getrennt mit riesigem Abstand wichtigster Operator: Komma zweitwichtigster Operator: UNION (Aneinanderreihung zweier gleichartiger Tabellen) Beispiel: SELECT Reiseziel.Name AS Reiseziel,Land.Name AS Land FROM Reiseziel,Land WHERE Reiseziel.LandNr = Land.LandNr Reiseziel.Name und Land.Name zur Unterscheidung AS zur Veränderung der Spaltentitel (ohne AS wäre der Titel beider Spalten jeweils "Name" gewesen)

Was bedeutet "Reiseziel,Land" ? SELECT * FROM Reiseziel,Land liefert: +--------+---------------+-------------+--------+--------+-----------------+-----------------+----------+---------+ | ZielNr | Name | Preis | LandNr | LandNr | Name | Sprache | Waehrung | Vorwahl | | 17 | Antananarivo | 5.00 | 3 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 18 | Stalingrad | 5.00 | 3 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 19 | Geldspeicher | 99999999.99 | 3 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 20 | Zuurich | 0.00 | 10005 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 21 | Kamtschakta | 8300.00 | 3 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 23 | New York | 200.00 | 10006 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 24 | Grand Canyon | 1947.00 | 10006 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 25 | Sidney | 2803.00 | 10012 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 26 | Darwin | 3400.00 | 10012 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 27 | Peking | 220.00 | 10016 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 28 | Berlin | 250.00 | 10010 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 29 | Edinburgh | 350.00 | 10009 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 30 | Valetta | 884.15 | 10017 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 31 | Atlantis | 300000.00 | 1 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 32 | Loch Ness | 430.00 | 10009 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 33 | San Francisco | 1100.00 | 10006 | 1 | Schlaraffenland | Germanisch | Bäz | 123456 | | 17 | Antananarivo | 5.00 | 3 | 3 | Russland | Russisch | Rub | 4423 | | 18 | Stalingrad | 5.00 | 3 | 3 | Russland | Russisch | Rub | 4423 | | 19 | Geldspeicher | 99999999.99 | 3 | 3 | Russland | Russisch | Rub | 4423 | | 20 | Zuurich | 0.00 | 10005 | 3 | Russland | Russisch | Rub | 4423 | | 21 | Kamtschakta | 8300.00 | 3 | 3 | Russland | Russisch | Rub | 4423 | | 23 | New York | 200.00 | 10006 | 3 | Russland | Russisch | Rub | 4423 | | 24 | Grand Canyon | 1947.00 | 10006 | 3 | Russland | Russisch | Rub | 4423 | | 25 | Sidney | 2803.00 | 10012 | 3 | Russland | Russisch | Rub | 4423 | | 26 | Darwin | 3400.00 | 10012 | 3 | Russland | Russisch | Rub | 4423 | | 27 | Peking | 220.00 | 10016 | 3 | Russland | Russisch | Rub | 4423 | | 28 | Berlin | 250.00 | 10010 | 3 | Russland | Russisch | Rub | 4423 | | 29 | Edinburgh | 350.00 | 10009 | 3 | Russland | Russisch | Rub | 4423 | | 30 | Valetta | 884.15 | 10017 | 3 | Russland | Russisch | Rub | 4423 | | 31 | Atlantis | 300000.00 | 1 | 3 | Russland | Russisch | Rub | 4423 | | 32 | Loch Ness | 430.00 | 10009 | 3 | Russland | Russisch | Rub | 4423 | | 33 | San Francisco | 1100.00 | 10006 | 3 | Russland | Russisch | Rub | 4423 | | 17 | Antananarivo | 5.00 | 3 | 4 | Narnia | ugaugish | efw | 69 | | 18 | Stalingrad | 5.00 | 3 | 4 | Narnia | ugaugish | efw | 69 | | 19 | Geldspeicher | 99999999.99 | 3 | 4 | Narnia | ugaugish | efw | 69 | | 20 | Zuurich | 0.00 | 10005 | 4 | Narnia | ugaugish | efw | 69 | SELECT * heisst: Alle Spalten auswählen

Fortsetzung I | 21 | Kamtschakta | 8300.00 | 3 | 4 | Narnia | ugaugish | efw | 69 | | 23 | New York | 200.00 | 10006 | 4 | Narnia | ugaugish | efw | 69 | | 24 | Grand Canyon | 1947.00 | 10006 | 4 | Narnia | ugaugish | efw | 69 | | 25 | Sidney | 2803.00 | 10012 | 4 | Narnia | ugaugish | efw | 69 | | 26 | Darwin | 3400.00 | 10012 | 4 | Narnia | ugaugish | efw | 69 | | 27 | Peking | 220.00 | 10016 | 4 | Narnia | ugaugish | efw | 69 | | 28 | Berlin | 250.00 | 10010 | 4 | Narnia | ugaugish | efw | 69 | | 29 | Edinburgh | 350.00 | 10009 | 4 | Narnia | ugaugish | efw | 69 | | 30 | Valetta | 884.15 | 10017 | 4 | Narnia | ugaugish | efw | 69 | | 31 | Atlantis | 300000.00 | 1 | 4 | Narnia | ugaugish | efw | 69 | | 32 | Loch Ness | 430.00 | 10009 | 4 | Narnia | ugaugish | efw | 69 | | 33 | San Francisco | 1100.00 | 10006 | 4 | Narnia | ugaugish | efw | 69 | | 17 | Antananarivo | 5.00 | 3 | 5 | Entenhausen | Quak | Ent | 2345 | | 18 | Stalingrad | 5.00 | 3 | 5 | Entenhausen | Quak | Ent | 2345 | | 19 | Geldspeicher | 99999999.99 | 3 | 5 | Entenhausen | Quak | Ent | 2345 | | 20 | Zuurich | 0.00 | 10005 | 5 | Entenhausen | Quak | Ent | 2345 | | 21 | Kamtschakta | 8300.00 | 3 | 5 | Entenhausen | Quak | Ent | 2345 | | 23 | New York | 200.00 | 10006 | 5 | Entenhausen | Quak | Ent | 2345 | | 24 | Grand Canyon | 1947.00 | 10006 | 5 | Entenhausen | Quak | Ent | 2345 | | 25 | Sidney | 2803.00 | 10012 | 5 | Entenhausen | Quak | Ent | 2345 | | 26 | Darwin | 3400.00 | 10012 | 5 | Entenhausen | Quak | Ent | 2345 | | 27 | Peking | 220.00 | 10016 | 5 | Entenhausen | Quak | Ent | 2345 | | 28 | Berlin | 250.00 | 10010 | 5 | Entenhausen | Quak | Ent | 2345 | | 29 | Edinburgh | 350.00 | 10009 | 5 | Entenhausen | Quak | Ent | 2345 | | 30 | Valetta | 884.15 | 10017 | 5 | Entenhausen | Quak | Ent | 2345 | | 31 | Atlantis | 300000.00 | 1 | 5 | Entenhausen | Quak | Ent | 2345 | | 32 | Loch Ness | 430.00 | 10009 | 5 | Entenhausen | Quak | Ent | 2345 | | 33 | San Francisco | 1100.00 | 10006 | 5 | Entenhausen | Quak | Ent | 2345 | | 17 | Antananarivo | 5.00 | 3 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 18 | Stalingrad | 5.00 | 3 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 19 | Geldspeicher | 99999999.99 | 3 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 20 | Zuurich | 0.00 | 10005 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 21 | Kamtschakta | 8300.00 | 3 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 23 | New York | 200.00 | 10006 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 24 | Grand Canyon | 1947.00 | 10006 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 25 | Sidney | 2803.00 | 10012 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 26 | Darwin | 3400.00 | 10012 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 27 | Peking | 220.00 | 10016 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 28 | Berlin | 250.00 | 10010 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 29 | Edinburgh | 350.00 | 10009 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 30 | Valetta | 884.15 | 10017 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 31 | Atlantis | 300000.00 | 1 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 32 | Loch Ness | 430.00 | 10009 | 33 | Swagistan | Yolobekisch | $$$ | 5555 | | 33 | San Francisco | 1100.00 | 10006 | 33 | Swagistan | Yolobekisch | $$$ | 5555 |

Fortsetzung II | 17 | Antananarivo | 5.00 | 3 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 18 | Stalingrad | 5.00 | 3 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 19 | Geldspeicher | 99999999.99 | 3 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 20 | Zuurich | 0.00 | 10005 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 21 | Kamtschakta | 8300.00 | 3 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 23 | New York | 200.00 | 10006 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 24 | Grand Canyon | 1947.00 | 10006 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 25 | Sidney | 2803.00 | 10012 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 26 | Darwin | 3400.00 | 10012 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 27 | Peking | 220.00 | 10016 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 28 | Berlin | 250.00 | 10010 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 29 | Edinburgh | 350.00 | 10009 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 30 | Valetta | 884.15 | 10017 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 31 | Atlantis | 300000.00 | 1 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 32 | Loch Ness | 430.00 | 10009 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 33 | San Francisco | 1100.00 | 10006 | 10005 | Whatever | AnotherLanguage | WE | 999 | | 17 | Antananarivo | 5.00 | 3 | 10006 | USA | Englisch | USD | +1 | | 18 | Stalingrad | 5.00 | 3 | 10006 | USA | Englisch | USD | +1 | | 19 | Geldspeicher | 99999999.99 | 3 | 10006 | USA | Englisch | USD | +1 | | 20 | Zuurich | 0.00 | 10005 | 10006 | USA | Englisch | USD | +1 | | 21 | Kamtschakta | 8300.00 | 3 | 10006 | USA | Englisch | USD | +1 | | 23 | New York | 200.00 | 10006 | 10006 | USA | Englisch | USD | +1 | | 24 | Grand Canyon | 1947.00 | 10006 | 10006 | USA | Englisch | USD | +1 | | 25 | Sidney | 2803.00 | 10012 | 10006 | USA | Englisch | USD | +1 | | 26 | Darwin | 3400.00 | 10012 | 10006 | USA | Englisch | USD | +1 | | 27 | Peking | 220.00 | 10016 | 10006 | USA | Englisch | USD | +1 | | 28 | Berlin | 250.00 | 10010 | 10006 | USA | Englisch | USD | +1 | | 29 | Edinburgh | 350.00 | 10009 | 10006 | USA | Englisch | USD | +1 | | 30 | Valetta | 884.15 | 10017 | 10006 | USA | Englisch | USD | +1 | | 31 | Atlantis | 300000.00 | 1 | 10006 | USA | Englisch | USD | +1 | | 32 | Loch Ness | 430.00 | 10009 | 10006 | USA | Englisch | USD | +1 | | 33 | San Francisco | 1100.00 | 10006 | 10006 | USA | Englisch | USD | +1 | | 17 | Antananarivo | 5.00 | 3 | 10007 | Schweiz | Deutsch | CHF | +41 | | 18 | Stalingrad | 5.00 | 3 | 10007 | Schweiz | Deutsch | CHF | +41 | | 19 | Geldspeicher | 99999999.99 | 3 | 10007 | Schweiz | Deutsch | CHF | +41 | | 20 | Zuurich | 0.00 | 10005 | 10007 | Schweiz | Deutsch | CHF | +41 | | 21 | Kamtschakta | 8300.00 | 3 | 10007 | Schweiz | Deutsch | CHF | +41 | | 23 | New York | 200.00 | 10006 | 10007 | Schweiz | Deutsch | CHF | +41 | | 24 | Grand Canyon | 1947.00 | 10006 | 10007 | Schweiz | Deutsch | CHF | +41 | | 25 | Sidney | 2803.00 | 10012 | 10007 | Schweiz | Deutsch | CHF | +41 | | 26 | Darwin | 3400.00 | 10012 | 10007 | Schweiz | Deutsch | CHF | +41 | | 27 | Peking | 220.00 | 10016 | 10007 | Schweiz | Deutsch | CHF | +41 | | 28 | Berlin | 250.00 | 10010 | 10007 | Schweiz | Deutsch | CHF | +41 | | 29 | Edinburgh | 350.00 | 10009 | 10007 | Schweiz | Deutsch | CHF | +41 | | 30 | Valetta | 884.15 | 10017 | 10007 | Schweiz | Deutsch | CHF | +41 |

Fortsetzung III | 31 | Atlantis | 300000.00 | 1 | 10007 | Schweiz | Deutsch | CHF | +41 | | 32 | Loch Ness | 430.00 | 10009 | 10007 | Schweiz | Deutsch | CHF | +41 | | 33 | San Francisco | 1100.00 | 10006 | 10007 | Schweiz | Deutsch | CHF | +41 | | 17 | Antananarivo | 5.00 | 3 | 10008 | Kanada | Englisch | CAD | +12 | | 18 | Stalingrad | 5.00 | 3 | 10008 | Kanada | Englisch | CAD | +12 | | 19 | Geldspeicher | 99999999.99 | 3 | 10008 | Kanada | Englisch | CAD | +12 | | 20 | Zuurich | 0.00 | 10005 | 10008 | Kanada | Englisch | CAD | +12 | | 21 | Kamtschakta | 8300.00 | 3 | 10008 | Kanada | Englisch | CAD | +12 | | 23 | New York | 200.00 | 10006 | 10008 | Kanada | Englisch | CAD | +12 | | 24 | Grand Canyon | 1947.00 | 10006 | 10008 | Kanada | Englisch | CAD | +12 | | 25 | Sidney | 2803.00 | 10012 | 10008 | Kanada | Englisch | CAD | +12 | | 26 | Darwin | 3400.00 | 10012 | 10008 | Kanada | Englisch | CAD | +12 | | 27 | Peking | 220.00 | 10016 | 10008 | Kanada | Englisch | CAD | +12 | | 28 | Berlin | 250.00 | 10010 | 10008 | Kanada | Englisch | CAD | +12 | | 29 | Edinburgh | 350.00 | 10009 | 10008 | Kanada | Englisch | CAD | +12 | | 30 | Valetta | 884.15 | 10017 | 10008 | Kanada | Englisch | CAD | +12 | | 31 | Atlantis | 300000.00 | 1 | 10008 | Kanada | Englisch | CAD | +12 | | 32 | Loch Ness | 430.00 | 10009 | 10008 | Kanada | Englisch | CAD | +12 | | 33 | San Francisco | 1100.00 | 10006 | 10008 | Kanada | Englisch | CAD | +12 | | 17 | Antananarivo | 5.00 | 3 | 10009 | Schottland | Englisch | GBP | +44 | | 18 | Stalingrad | 5.00 | 3 | 10009 | Schottland | Englisch | GBP | +44 | | 19 | Geldspeicher | 99999999.99 | 3 | 10009 | Schottland | Englisch | GBP | +44 | | 20 | Zuurich | 0.00 | 10005 | 10009 | Schottland | Englisch | GBP | +44 | | 21 | Kamtschakta | 8300.00 | 3 | 10009 | Schottland | Englisch | GBP | +44 | | 23 | New York | 200.00 | 10006 | 10009 | Schottland | Englisch | GBP | +44 | | 24 | Grand Canyon | 1947.00 | 10006 | 10009 | Schottland | Englisch | GBP | +44 | | 25 | Sidney | 2803.00 | 10012 | 10009 | Schottland | Englisch | GBP | +44 | | 26 | Darwin | 3400.00 | 10012 | 10009 | Schottland | Englisch | GBP | +44 | | 27 | Peking | 220.00 | 10016 | 10009 | Schottland | Englisch | GBP | +44 | | 28 | Berlin | 250.00 | 10010 | 10009 | Schottland | Englisch | GBP | +44 | | 29 | Edinburgh | 350.00 | 10009 | 10009 | Schottland | Englisch | GBP | +44 | | 30 | Valetta | 884.15 | 10017 | 10009 | Schottland | Englisch | GBP | +44 | | 31 | Atlantis | 300000.00 | 1 | 10009 | Schottland | Englisch | GBP | +44 | | 32 | Loch Ness | 430.00 | 10009 | 10009 | Schottland | Englisch | GBP | +44 | | 33 | San Francisco | 1100.00 | 10006 | 10009 | Schottland | Englisch | GBP | +44 | | 17 | Antananarivo | 5.00 | 3 | 10010 | Deutschland | Deutsch | EUR | +49 | | 18 | Stalingrad | 5.00 | 3 | 10010 | Deutschland | Deutsch | EUR | +49 | | 19 | Geldspeicher | 99999999.99 | 3 | 10010 | Deutschland | Deutsch | EUR | +49 | | 20 | Zuurich | 0.00 | 10005 | 10010 | Deutschland | Deutsch | EUR | +49 | | 21 | Kamtschakta | 8300.00 | 3 | 10010 | Deutschland | Deutsch | EUR | +49 | | 23 | New York | 200.00 | 10006 | 10010 | Deutschland | Deutsch | EUR | +49 | | 24 | Grand Canyon | 1947.00 | 10006 | 10010 | Deutschland | Deutsch | EUR | +49 | | 25 | Sidney | 2803.00 | 10012 | 10010 | Deutschland | Deutsch | EUR | +49 | | 26 | Darwin | 3400.00 | 10012 | 10010 | Deutschland | Deutsch | EUR | +49 | | 27 | Peking | 220.00 | 10016 | 10010 | Deutschland | Deutsch | EUR | +49 |

Fortsetzung IV | 28 | Berlin | 250.00 | 10010 | 10010 | Deutschland | Deutsch | EUR | +49 | | 29 | Edinburgh | 350.00 | 10009 | 10010 | Deutschland | Deutsch | EUR | +49 | | 30 | Valetta | 884.15 | 10017 | 10010 | Deutschland | Deutsch | EUR | +49 | | 31 | Atlantis | 300000.00 | 1 | 10010 | Deutschland | Deutsch | EUR | +49 | | 32 | Loch Ness | 430.00 | 10009 | 10010 | Deutschland | Deutsch | EUR | +49 | | 33 | San Francisco | 1100.00 | 10006 | 10010 | Deutschland | Deutsch | EUR | +49 | | 17 | Antananarivo | 5.00 | 3 | 10011 | Neuseeland | Englisch | NZD | +64 | | 18 | Stalingrad | 5.00 | 3 | 10011 | Neuseeland | Englisch | NZD | +64 | | 19 | Geldspeicher | 99999999.99 | 3 | 10011 | Neuseeland | Englisch | NZD | +64 | | 20 | Zuurich | 0.00 | 10005 | 10011 | Neuseeland | Englisch | NZD | +64 | | 21 | Kamtschakta | 8300.00 | 3 | 10011 | Neuseeland | Englisch | NZD | +64 | | 23 | New York | 200.00 | 10006 | 10011 | Neuseeland | Englisch | NZD | +64 | | 24 | Grand Canyon | 1947.00 | 10006 | 10011 | Neuseeland | Englisch | NZD | +64 | | 25 | Sidney | 2803.00 | 10012 | 10011 | Neuseeland | Englisch | NZD | +64 | | 26 | Darwin | 3400.00 | 10012 | 10011 | Neuseeland | Englisch | NZD | +64 | | 27 | Peking | 220.00 | 10016 | 10011 | Neuseeland | Englisch | NZD | +64 | | 28 | Berlin | 250.00 | 10010 | 10011 | Neuseeland | Englisch | NZD | +64 | | 29 | Edinburgh | 350.00 | 10009 | 10011 | Neuseeland | Englisch | NZD | +64 | | 30 | Valetta | 884.15 | 10017 | 10011 | Neuseeland | Englisch | NZD | +64 | | 31 | Atlantis | 300000.00 | 1 | 10011 | Neuseeland | Englisch | NZD | +64 | | 32 | Loch Ness | 430.00 | 10009 | 10011 | Neuseeland | Englisch | NZD | +64 | | 33 | San Francisco | 1100.00 | 10006 | 10011 | Neuseeland | Englisch | NZD | +64 | | 17 | Antananarivo | 5.00 | 3 | 10012 | Australien | Englisch | AUD | +61 | | 18 | Stalingrad | 5.00 | 3 | 10012 | Australien | Englisch | AUD | +61 | | 19 | Geldspeicher | 99999999.99 | 3 | 10012 | Australien | Englisch | AUD | +61 | | 20 | Zuurich | 0.00 | 10005 | 10012 | Australien | Englisch | AUD | +61 | | 21 | Kamtschakta | 8300.00 | 3 | 10012 | Australien | Englisch | AUD | +61 | | 23 | New York | 200.00 | 10006 | 10012 | Australien | Englisch | AUD | +61 | | 24 | Grand Canyon | 1947.00 | 10006 | 10012 | Australien | Englisch | AUD | +61 | | 25 | Sidney | 2803.00 | 10012 | 10012 | Australien | Englisch | AUD | +61 | | 26 | Darwin | 3400.00 | 10012 | 10012 | Australien | Englisch | AUD | +61 | | 27 | Peking | 220.00 | 10016 | 10012 | Australien | Englisch | AUD | +61 | | 28 | Berlin | 250.00 | 10010 | 10012 | Australien | Englisch | AUD | +61 | | 29 | Edinburgh | 350.00 | 10009 | 10012 | Australien | Englisch | AUD | +61 | | 30 | Valetta | 884.15 | 10017 | 10012 | Australien | Englisch | AUD | +61 | | 31 | Atlantis | 300000.00 | 1 | 10012 | Australien | Englisch | AUD | +61 | | 32 | Loch Ness | 430.00 | 10009 | 10012 | Australien | Englisch | AUD | +61 | | 33 | San Francisco | 1100.00 | 10006 | 10012 | Australien | Englisch | AUD | +61 | | 17 | Antananarivo | 5.00 | 3 | 10013 | Österreich | Deutsch | EUR | +43 | | 18 | Stalingrad | 5.00 | 3 | 10013 | Österreich | Deutsch | EUR | +43 | | 19 | Geldspeicher | 99999999.99 | 3 | 10013 | Österreich | Deutsch | EUR | +43 | | 20 | Zuurich | 0.00 | 10005 | 10013 | Österreich | Deutsch | EUR | +43 | | 21 | Kamtschakta | 8300.00 | 3 | 10013 | Österreich | Deutsch | EUR | +43 | | 23 | New York | 200.00 | 10006 | 10013 | Österreich | Deutsch | EUR | +43 | | 24 | Grand Canyon | 1947.00 | 10006 | 10013 | Österreich | Deutsch | EUR | +43 | | 25 | Sidney | 2803.00 | 10012 | 10013 | Österreich | Deutsch | EUR | +43 | | 26 | Darwin | 3400.00 | 10012 | 10013 | Österreich | Deutsch | EUR | +43 |

Fortsetzung V | 27 | Peking | 220.00 | 10016 | 10013 | Österreich | Deutsch | EUR | +43 | | 28 | Berlin | 250.00 | 10010 | 10013 | Österreich | Deutsch | EUR | +43 | | 29 | Edinburgh | 350.00 | 10009 | 10013 | Österreich | Deutsch | EUR | +43 | | 30 | Valetta | 884.15 | 10017 | 10013 | Österreich | Deutsch | EUR | +43 | | 31 | Atlantis | 300000.00 | 1 | 10013 | Österreich | Deutsch | EUR | +43 | | 32 | Loch Ness | 430.00 | 10009 | 10013 | Österreich | Deutsch | EUR | +43 | | 33 | San Francisco | 1100.00 | 10006 | 10013 | Österreich | Deutsch | EUR | +43 | | 17 | Antananarivo | 5.00 | 3 | 10014 | Frankreich | Französisch | EUR | +33 | | 18 | Stalingrad | 5.00 | 3 | 10014 | Frankreich | Französisch | EUR | +33 | | 19 | Geldspeicher | 99999999.99 | 3 | 10014 | Frankreich | Französisch | EUR | +33 | | 20 | Zuurich | 0.00 | 10005 | 10014 | Frankreich | Französisch | EUR | +33 | | 21 | Kamtschakta | 8300.00 | 3 | 10014 | Frankreich | Französisch | EUR | +33 | | 23 | New York | 200.00 | 10006 | 10014 | Frankreich | Französisch | EUR | +33 | | 24 | Grand Canyon | 1947.00 | 10006 | 10014 | Frankreich | Französisch | EUR | +33 | | 25 | Sidney | 2803.00 | 10012 | 10014 | Frankreich | Französisch | EUR | +33 | | 26 | Darwin | 3400.00 | 10012 | 10014 | Frankreich | Französisch | EUR | +33 | | 27 | Peking | 220.00 | 10016 | 10014 | Frankreich | Französisch | EUR | +33 | | 28 | Berlin | 250.00 | 10010 | 10014 | Frankreich | Französisch | EUR | +33 | | 29 | Edinburgh | 350.00 | 10009 | 10014 | Frankreich | Französisch | EUR | +33 | | 30 | Valetta | 884.15 | 10017 | 10014 | Frankreich | Französisch | EUR | +33 | | 31 | Atlantis | 300000.00 | 1 | 10014 | Frankreich | Französisch | EUR | +33 | | 32 | Loch Ness | 430.00 | 10009 | 10014 | Frankreich | Französisch | EUR | +33 | | 33 | San Francisco | 1100.00 | 10006 | 10014 | Frankreich | Französisch | EUR | +33 | | 17 | Antananarivo | 5.00 | 3 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 18 | Stalingrad | 5.00 | 3 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 19 | Geldspeicher | 99999999.99 | 3 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 20 | Zuurich | 0.00 | 10005 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 21 | Kamtschakta | 8300.00 | 3 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 23 | New York | 200.00 | 10006 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 24 | Grand Canyon | 1947.00 | 10006 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 25 | Sidney | 2803.00 | 10012 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 26 | Darwin | 3400.00 | 10012 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 27 | Peking | 220.00 | 10016 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 28 | Berlin | 250.00 | 10010 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 29 | Edinburgh | 350.00 | 10009 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 30 | Valetta | 884.15 | 10017 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 31 | Atlantis | 300000.00 | 1 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 32 | Loch Ness | 430.00 | 10009 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 33 | San Francisco | 1100.00 | 10006 | 10015 | Indonesien | Indonesisch | IDR | +62 | | 17 | Antananarivo | 5.00 | 3 | 10016 | China | Chinesisch | CNY | +86 | | 18 | Stalingrad | 5.00 | 3 | 10016 | China | Chinesisch | CNY | +86 | | 19 | Geldspeicher | 99999999.99 | 3 | 10016 | China | Chinesisch | CNY | +86 | | 20 | Zuurich | 0.00 | 10005 | 10016 | China | Chinesisch | CNY | +86 | | 21 | Kamtschakta | 8300.00 | 3 | 10016 | China | Chinesisch | CNY | +86 | | 23 | New York | 200.00 | 10006 | 10016 | China | Chinesisch | CNY | +86 | | 24 | Grand Canyon | 1947.00 | 10006 | 10016 | China | Chinesisch | CNY | +86 | | 25 | Sidney | 2803.00 | 10012 | 10016 | China | Chinesisch | CNY | +86 |

Fortsetzung VI | 26 | Darwin | 3400.00 | 10012 | 10016 | China | Chinesisch | CNY | +86 | | 27 | Peking | 220.00 | 10016 | 10016 | China | Chinesisch | CNY | +86 | | 28 | Berlin | 250.00 | 10010 | 10016 | China | Chinesisch | CNY | +86 | | 29 | Edinburgh | 350.00 | 10009 | 10016 | China | Chinesisch | CNY | +86 | | 30 | Valetta | 884.15 | 10017 | 10016 | China | Chinesisch | CNY | +86 | | 31 | Atlantis | 300000.00 | 1 | 10016 | China | Chinesisch | CNY | +86 | | 32 | Loch Ness | 430.00 | 10009 | 10016 | China | Chinesisch | CNY | +86 | | 33 | San Francisco | 1100.00 | 10006 | 10016 | China | Chinesisch | CNY | +86 | | 17 | Antananarivo | 5.00 | 3 | 10017 | Malta | Maltesisch | EUR | +356 | | 18 | Stalingrad | 5.00 | 3 | 10017 | Malta | Maltesisch | EUR | +356 | | 19 | Geldspeicher | 99999999.99 | 3 | 10017 | Malta | Maltesisch | EUR | +356 | | 20 | Zuurich | 0.00 | 10005 | 10017 | Malta | Maltesisch | EUR | +356 | | 21 | Kamtschakta | 8300.00 | 3 | 10017 | Malta | Maltesisch | EUR | +356 | | 23 | New York | 200.00 | 10006 | 10017 | Malta | Maltesisch | EUR | +356 | | 24 | Grand Canyon | 1947.00 | 10006 | 10017 | Malta | Maltesisch | EUR | +356 | | 25 | Sidney | 2803.00 | 10012 | 10017 | Malta | Maltesisch | EUR | +356 | | 26 | Darwin | 3400.00 | 10012 | 10017 | Malta | Maltesisch | EUR | +356 | | 27 | Peking | 220.00 | 10016 | 10017 | Malta | Maltesisch | EUR | +356 | | 28 | Berlin | 250.00 | 10010 | 10017 | Malta | Maltesisch | EUR | +356 | | 29 | Edinburgh | 350.00 | 10009 | 10017 | Malta | Maltesisch | EUR | +356 | | 30 | Valetta | 884.15 | 10017 | 10017 | Malta | Maltesisch | EUR | +356 | | 31 | Atlantis | 300000.00 | 1 | 10017 | Malta | Maltesisch | EUR | +356 | | 32 | Loch Ness | 430.00 | 10009 | 10017 | Malta | Maltesisch | EUR | +356 | | 33 | San Francisco | 1100.00 | 10006 | 10017 | Malta | Maltesisch | EUR | +356 | +--------+---------------+-------------+--------+--------+-----------------+-----------------+----------+---------+

D.h.: Reiseziel,Land ist eine Tabelle, die aus allen Kombinationen einer Zeile von Reiseziel und einer Zeile von Land besteht. Diese Tabelle wird auch das kartesische Produkt der Tabellen Reiseziel und Land genannt. Sie enthält auch alle unsinnigen Kombinationen der beiden Tabellen. Um die sinnvollen Kombinationen herauszufiltern, fügen wir die Bedingung an, dass das Feld LandNr in beiden Tabellen gleich sein muss: SELECT * FROM Reiseziel,Land WHERE Reiseziel.LandNr = Land.LandNr; Schliesslich beschränken wir uns auf diejenigen Spalten, welche uns interessieren und geben ihnen eindeutige Titel.

komplizierteres Beispiel: SELECT Person.Name FROM Person,Buchung,Reiseziel,Land WHERE Person.PersNr = Buchung.KundeNr AND Buchung.ZielNr = Reiseziel.ZielNr AND Reiseziel.LandNr = Land.LandNr AND Land.Sprache='Englisch'; zu jedem kartesischen Produkt gehört eine WHERE-Bedingung WHERE-Bedingungen werden mit AND verknüpft

identische Spalten eliminieren: SELECT DISTINCT Person.Name FROM Person,Buchung,Reiseziel,Land WHERE Person.PersNr = Buchung.KundeNr AND Buchung.ZielNr = Reiseziel.ZielNr AND Reiseziel.LandNr = Land.LandNr AND Land.Sprache='Englisch'; DISTINCT schadet nie  im Zweifelsfall verwenden!

Was kann hinter SELECT stehen? SELECT [DISTINCT] [Tabellenname1.]Spalte1 [AS Bezeichnung1] [,[Tabellenname2.]Spalte2] [AS Bezeichnung2]] ... [] : optionale Teile Wenn es die Eindeutigkeit erfordert (gleicher Spaltenname in mehr als einer der in FROM ausgewählten Tabellen), muss der Tabellenname angegeben werden. Noch nicht erwähnt sind bisher Aggretationsfunktionen.

Was kann hinter WHERE stehen? Bedingungen zu Spalten aus den in FROM verwendeten Tabellen Operatoren zur Formulierung dieser Bedingungen: <, =, >, <=, >=, LIKE, REGEXP, IS NULL, IS NOT NULL Operatoren zur Verknüpfung von Bedingungen: AND, OR, NOT, () Operatoren für Tests auf Enthaltensein in einer Auswahl: EXISTS, IN Beispiele in den Übungen zu LIKE: es können die Wildcards % (keines, eines oder beliebig viele Zeichen) und _ (genau ein Zeichen) verwendet werden.

Was kann hinter ORDER BY stehen? ORDER BY Bezeichnung1 [ASC|DESC] [, Bezeichnung 2] [ASC|DESC]] ... Beispiel: SELECT Name,Preis FROM Reiseziel WHERE Preis < 1000 ORDER BY Preis ASC; Bezeichnung1: Spaltenname oder Tabellenname.Spaltenname oder Bezeichnung gemäss AS im SELECT-Teil Zuerst wird nach Bezeichnung1 sortiert, innerhalb der Zeilen mit gleichem Wert bei Bezeichnung1 wird nach Bezeichnung2 sortiert usw.

Aggregationsfunktionen Wichtigste Vertreter: COUNT(): Wie viele Zeilen hat das Ergebnis SUM(Spaltenbezeichnung): Summe AVG(Spaltenbezeichnung): Mittelwert Beispiel 1: SELECT AVG(Gehalt) FROM Mitarbeiter; Beispiel 2: SELECT Person.Name,SUM(Reiseziel.Preis) AS Summe FROM Reiseziel,Buchung, Person WHERE Reiseziel.ZielNr = Buchung.ZielNr AND Buchung.KundeNr = Person.PersNr GROUP BY Person.Name ORDER BY Summe DESC GROUP BY Person.Name: Summiere verschiedene Personen getrennt!

Aufgaben Die folgenden Aufgaben können mit dem Webinterface auf http://www.gymmuenchenstein.ch/weiss/SQL.php gelöst weden. Sie beziehen sich auf die Reisebüro-Datenbank. Geben Sie die Namen aller Länder, welche mindestens zweimal den Buchstaben A enthalten, alphabetisch geordnet aus. SELECT Name FROM Land WHERE Name LIKE '%a%a%' ORDER BY Name Bemerkungen: Wenn weder ASC noch DESC für die Sortierreihenfolge angegeben wird, wird ASC angekommen, also aufsteigende Sortierung. LIKE unterscheidet keine Gross- und Kleinschreibung, daher wird auch Australien gefunden.

Aufgaben Geben Sie die Namen aller Kunden alphabetisch geordnet aus. Die folgenden Aufgaben können mit dem Webinterface auf http://www.gymmuenchenstein.ch/weiss/SQL.php gelöst weden. Sie beziehen sich auf die Reisebüro-Datenbank. Geben Sie die Namen aller Kunden alphabetisch geordnet aus. SELECT Name FROM Person,Kunde WHERE Person.PersNr = Kunde.PersNr ORDER BY Name

Aufgaben Die folgenden Aufgaben können mit dem Webinterface auf http://www.gymmuenchenstein.ch/weiss/SQL.php gelöst weden. Sie beziehen sich auf die Reisebüro-Datenbank. Geben Sie die Namen aller Kunden einmal aus, welche schon einmal in New York waren. SELECT DISTINCT Person.Name FROM Person,Buchung,Reiseziel WHERE Person.PersNr = Buchung.KundeNr AND Buchung.ZielNr = Reiseziel.ZielNr AND Reiseziel.Name = 'New York'

Aufgaben Die folgenden Aufgaben können mit dem Webinterface auf http://www.gymmuenchenstein.ch/weiss/SQL.php gelöst weden. Sie beziehen sich auf die Reisebüro-Datenbank. Geben Sie eine Rangliste der Namen der Kunden aus, absteigend sortiert nach der Anzahl der von ihnen gebuchten Reisen SELECT Person.Name,COUNT(Buchung.KundeNr) AS `Anz. Buchungen` FROM Person, Buchung WHERE Person.PersNr = Buchung.KundeNr GROUP BY Person.Name ORDER BY `Anz. Buchungen` DESC Anmerkung: Namen mit Sonder- und/oder Leerzeichen in verkehrte Hochkommata (``) einschliessen!

Aufgaben Die folgenden Aufgaben können mit dem Webinterface auf http://www.gymmuenchenstein.ch/weiss/SQL.php gelöst weden. Sie beziehen sich auf die Reisebüro-Datenbank. Geben Sie eine Rangliste der Mitarbeiter an, absteigend sortiert nach der Anzahl Kunden, welch der jeweilige Mitarbeiter schon beraten hat. Aus der Rangliste soll der Name des Mitarbeiters und die jeweilige Anzahl Beratungen ersichtlich sein. SELECT Person.Name,COUNT(Name) AS `Anz. Kunden` FROM Person,Beratung WHERE Beratung.MitarbeiterNr = Person.PersNr GROUP BY Person.Name ORDER BY `Anz. Kunden` DESC

Aufgaben Die folgenden Aufgaben können mit dem Webinterface auf http://www.gymmuenchenstein.ch/weiss/SQL.php gelöst weden. Sie beziehen sich auf die Reisebüro-Datenbank. Welche Mitarbeiter haben schon mindestens 3 Kunden beraten? Geben Sie deren Namen zusammen mit der Anzahl beratener Kunden aus, sortiert nach Namen SELECT * FROM (SELECT Person.Name,COUNT(Name) AS `Anz. Kunden` FROM Person,Beratung WHERE Beratung.MitarbeiterNr = Person.PersNr GROUP BY Person.Name ORDER BY `Anz. Kunden` DESC) AS Zwischentabelle WHERE `Anz. Kunden` >= 3