Übungen Teil 1: SELECT-Anweisung

Übungen Teil 1:
SELECT-Anweisung
Dozent: Stefan Maihack Dipl. Ing. (FH)
SELECT-Übung1
1.
Geben Sie den Inhalt der Tabelle „Stadt“ aus, so dass nur die Spalten
„name“ und „einwohner“ angezeigt werden. (PROJEKTION)
SELECT-Übung2
1.
Gebe die Kürzel sämtlicher Länder, für die Städte in der DB
enthalten sind, aus. (PROJEKTION) Tabelle „Stadt“ wählen. Es
sollen keine doppelten ID´s ausgegeben werden.
SELECT-Übung3
1.
Geben Sie alle Städte aus, die als ID „D“ haben.
(WHERE) (Tabelle „Stadt“)
SELECT-Übung4
•
Geben Sie alle Städte aus, die auf „burg“ enden und weniger als
1.000.000 Einwohner haben. (WHERE und LIKE). (Tabelle „stadt“)
SELECT-Übung5
1. Geben Sie alle Städte in Deutschland aus, die
im Alphabet vor ‚M‘ kommen. (Tabelle „stadt“)
SELECT-Übung6
1. Geben Sie alle Flüsse aus, die in einen
See fliesen. (Tabelle „fluss“)
SELECT-Übung7
1. Geben Sie alle Flüsse aus, die
versickern (Tabelle „fluss“)
SELECT-Übung8
1.
Geben Sie die höchsten Berge der Erde der Höhe
nach absteigend sortiert an (Tabelle: „berg“)
SELECT-Übung9
1. Welche Länder haben weniger Einwohner als
Tokio (Subquery Tabelle „land“ und „stadt“)
SELECT-Übung10
Aggregatsfunktionen
• Wie viele Städte sind in der Datenbank gespeichert
(Tabelle: stadt)
SELECT-Übung11
Aggregatsfunktionen
Welche Aggregatsfunktionen gibt es?
SELECT-Übung12
Aggregatsfunktionen
Wie viele Städte gibt es in Deutschland oder Frankreich oder Italien, …
(Tabelle: stadt)?
ACHTUNG: Hierbei handelt es sich um einzelne Anweisungen.
SELECT-Übung13
Aggregatsfunktionen
Gruppieren nach l_ID: Wie viele Städte haben die
einzelnen Länder (Tabelle: stadt)
SELECT-Übung14
Aggregatsfunktionen
Wie viele Einwohner gibt es durchschnittlich in den Städten der einzelnen amerikanischen
Bundesstaaten und wie viele Städte sind jeweils für die einzelnen Staaten in der Datenbank
abgelegt?
SELECT-Übung15
Aggregatsfunktionen
•
Gesucht wird die Gesamtanzahl der Einwohner pro Land, die in den Städten leben.
SELECT-Übung16
Aggregatsfunktionen
•
Gesucht sind nur Länder mit mehr als 10 Millionen Stadtbewohner (Prädikat und Gruppe)
SELECT-Übung17
Mengenoperationen
•
Welche Städtenamen tauchen auch als Namen von Ländern in der Datenbank auf?
SELECT-Übung1
Lösung
• SELECT name, einwohner FROM stadt;
SELECT-Übung2
Lösung
•
SELECT l_id FROM stadt;
SELECT-Übung3
Lösung
•
SELECT * FROM stadt WHERE
l_id=`D`;
SELECT-Übung4
Lösung
• SELECT * FROM stadt WHERE name
LIKE `%burg` AND einwohner < 1000000;
SELECT-Übung5
Lösung
• SELECT * FROM stadt WHERE l_id=‚D‘
AND name < `m`;
SELECT-Übung6
Lösung
• SELECT name FROM fluss WHERE NOT
see IS NOT NULL;
SELECT-Übung7
Lösung
• SELECT name FROM fluss WHERE see
IS NULL AND meer IS NULL fluss IS
NULL;
Î Es sollte eine leere Liste erscheinen.
SELECT-Übung8
Lösung
•
SELECT name, hoehe FROM berg
ORDER BY hoehe DESC;
SELECT-Übung9
Lösung
• Welche Länder haben weniger Einwohner
als Tokio (Subquery Tabelle „land“ und
„stadt“)
SELECT-Übung10
Aggregatsfunktionen
Lösung
•
SELECT count(*) FROM stadt;
SELECT-Übung11
Aggregatsfunktionen
Lösung
1.
2.
3.
4.
5.
count(…)
max(…)
min(…)
sum(…)
avg(…)
SELECT-Übung12
Aggregatsfunktionen
Lösung
•
SELECT count(*) FROM stadt WHERE
l_id=´D´;
SELECT-Übung13
Aggregatsfunktionen
Lösung
• SELECT count(*), l_id FROM stadt
GROUP BY l_id;
SELECT-Übung14
Aggregatsfunktionen
Lösung
• SELECT avg(einwohner), count(name),
l_id, lt_id
FROM stadt
WHERE l_id=´USA´
GROUP BY l_id, lt_id
ORDER_BY 1 desc , l_id, lt_id;
SELECT-Übung15
Aggregatsfunktionen - Lösung
• SELECT l_ID, sum(einwohner) FROM
stadt GROUP BY l_id limit 10;
SELECT-Übung16
Aggregatsfunktionen - Lösung
•
SELECT l_id, sum(einwohner) FROM stadt
GROUP BY l_id HAVING sum(einwohner) > 100000 limit 10;