Wie viele Menschen leben in den verschiedenen Ländern der Erde? Wie viel geben die Länder jeweils für Bildung aus? In welchen Ländern liegen die höchsten Berge der Erde? Diese und andere Fragen lassen sich mithilfe der Daten in der Datenbank Welt beantworten.
In dieser Lektion lernen Sie zunächst Spalten bzw. Attribute einzelner Tabellen mithilfe einer SQL-Abfrage auszugeben. Damit erhalten Sie einen Überblick über die Daten in der Datenbank Welt.
Kurzbeschreibung der Datenbank Welt
Die Datenbank enthält in einer Tabelle Laender eine Auswahl an Daten zu verschiedenen Ländern der Erde. Neben geographischen Daten liegen auch wirtschaftliche und soziale Daten vor.
Eine weitere Tabelle Berge enthält geographische Daten zu einigen der höchsten Berge der Erde. Die Zuordnung der Berge zu den Ländern erfolgt in einer dritten Tabelle liegt_in, da es Berge gibt, die auf der Grenze mehrerer Länder liegen.
Eine detaillierte Übersicht über die Daten und Quellenangaben finden Sie im Bereich Infos.
Lernaufgaben zur Datenbank Welt
Mit der SQL-Abfrage SELECT* FROMTabelle können Sie alle Spalten bzw. Attribute einer Tabelle ausgeben lassen.
Aufgabe 1:
Geben Sie einen SQL-Befehl ein, der alle Daten der Tabelle Laender ausgibt.
Geben Sie einen SQL-Befehl ein, der alle Daten der Tabelle Berge
ausgibt.
Tipp
Setzen Sie in dem Befehl SELECT*FROMTabelle den jeweils passenden Tabellennamen ein.
mögliche Lösung
SELECT* FROMLaender
SELECT* FROMBerge
Der Stern * hinter dem Schlüsselwort SELECT gibt an, dass alle Attribute einer Tabelle ausgewählt werden sollen.
Anstelle des Sterns können hinter SELECT auch ein oder mehrere Attribute angegeben werden. Jedes Attribut bildet eine Spalte der Ausgabetabelle.
Finden Sie heraus, zu welchen Kontinenten Länder in der Tabelle Laender enthalten sind. Aufgabe 2: Geben Sie einen SQL-Befehl ein, der nur das Attribut Kontinent der Tabelle Laender auswählt.
Tipp
Ändern Sie den Stern in das Attribut Kontinent im bereits bekannten Befehl SELECT*FROMLaender.
mögliche Lösung
SELECTKontinent FROMLaender
Besonders übersichtlich ist die Ausgabe der Kontinente noch nicht. Mit dem Schlüsselwort DISTINCT hinter SELECT werden doppelte Datensätze nur einmal ausgegeben. Aufgabe 3: Passen Sie Ihren SQL-Befehl aus Aufgabe 2 so an, dass jeder Kontinent der Tabelle Laender nur einmal ausgegeben wird.
Tipp
Fügen Sie zwischen SELECT und dem Attribut Kontinent das Schlüsselwort DISTINCT ein.
mögliche Lösung
SELECTDISTINCT Kontinent FROMLaender
Um mehrere Attribute einer Tabelle auszugeben, können diese mit Komma getrennt hinter SELECT aufgezählt werden. Aufgabe 4: Geben Sie einen SQL-Befehl ein, der die Attribute Name, Flaeche und Einwohnerzahl der Tabelle Laender ausgibt.
Tipp
Ändern Sie den Stern in Name, Flaeche, Einwohnerzahl in dem bereits bekannten Befehl SELECT * FROMLaender
mögliche Lösung
SELECT Name, Flaeche, Einwohnerzahl FROMLaender
Die Spaltenamen der ausgegebenen Tabelle können umbenannt werden. Man spricht hier auch von einem Alias.
Dazu wird hinter dem Attribut, das umbenannt werden soll, das Schlüsselwort AS gefolgt von dem gewünschten Namen angegeben.
Beispielsweise kann das Attribut Name der Tabelle Laender mit dem Spaltennamen Land ausgegeben werden: SELECTName AS 'Land' FROM Laender
Aufgabe 5: Geben Sie einen SQL-Befehl ein, der das Attribut Name der Tabelle Berge auswählt und als Berg ausgibt.
Tipp
Das Attribut Name soll in Berg umbenannt werden.
Ergänzen Sie AS Berg hinter SELECTName
mögliche Lösung
SELECTName AS Berg FROMBerge
Kombinieren Sie die gelernten Befehle.
Aufgabe 6: Geben Sie einen SQL-Befehl ein, der die Attribute Name, Bildungsausgaben und Erhebungsjahr_Bildungsausgaben ausgibt. Das Attribut Bildungsausgaben soll als 'Bildungsausgaben in % vom BIP' und das Attribut Erhebungsjahr_Bildungsausgaben als Jahr ausgegeben werden.
Tipp
Jedes Attribut muss einzeln umbenannt werden.
Benennen Sie die Attribute hinter SELECT mithilfe des Schlüsselworts AS um: Bildungsausgaben AS 'Bildungsausgaben in % vom BIP' und Erhebungsjahr_Bildungsausgaben AS 'Jahr'
mögliche Lösung
SELECTName, Bildungsausgaben AS 'Bildungsausgaben in % vom BIP', Erhebungsjahr_Bildungsausgaben AS 'Jahr' FROMLaender