DarkSQL by Darkleo.com
DarkSQL
SELECT Anweisungen 2
Beziehungen |
Aufgabe 1
Zeigen Sie für beide Ampeln (1 und 2) die Ampelphasen um 12:00 Uhr mittags
an. Geben Sie dazu für den um 10:00 Uhr gültigen Zeitraum den Beginn, das
Ende, die Bezeichnung der Ampel und die Dauer der Ampelphasen (Rot, Gelb, Grün)
aus.
SELECT ampel.ampelbez, ampelzeitphase.beginn, ampelzeitphase.ende, ampelphasen.rotdauer, ampelphasen.gruendauer, ampelphasen.gelbdauer FROM ampel, ampelzeitphase, ampelphasen WHERE ampel.ampelID=ampelzeitphase.ampelID AND ampelzeitphase.phasenID=ampelphasen.phasenID AND ampelzeitphase.beginn =12*3600; |
Aufgabe 2
Erstellen Sie eine SQL-Anweisung, die die Anzahl der Ampelphasen ausgibt mit
der Überschrieft "Anzahlphasen".
SELECT COUNT(*) AS AnzahlPhasen FROM ampelphasen; |
Aufgabe 3
Wählen Sie die Ampelphasen aus , in der die längste Grünphase eingestellt
ist. Die Ergebnistabelle enthält folgende Felder: PhasenID, Gründauer und
Rotdauer.
SELECT phasenID, gruendauer, rotdauer FROM ampelphasen WHERE gruendauer=(SELECT MAX(gruendauer) FROM ampelphasen); |
Aufgabe 4
Wähle Sie alle Ampelphasen aus, in der die Rotphase kleiner ist als die
Grünphase. Zeigen Sie die Dauer der Rotphase und der Grünphase an.
SELECT ampelphasen.rotdauer, ampelphasen.gruendauer FROM ampelzeitphase, ampelphasen WHERE ampelzeitphase.phasenID=ampelphasen.phasenID AND ampelphasen.rotdauer<ampelphasen.gruendauer; |
Aufgabe 5
Geben Sie für die Ampel 1(Hauptstrasse) alle festgelegten Ampelphasen (Rot,
Gelb, Grün) und die dazugehörigen Zeiträume (Beginn und Ende) in Stunden
an. Die Ergebnistabelle enthält die Ampelbezeichnung, Beginn (Stu), Ende (Stu)
und die Dauer der Ampelphasen.
SELECT ampel.ampelbez, ampelzeitphase.beginn/3600 AS [Beginn in Stu], ampelzeitphase.ende/3600 AS [Ende in Stu], ampelphasen.rotdauer, ampelphasen.gruendauer, ampelphasen.gelbdauer FROM ampel, ampelzeitphase, ampelphasen WHERE ampel.ampelID=ampelzeitphase.ampelID AND ampelzeitphase.phasenID= ampelphasen.phasenID AND ampel.ampelbez = 'Ampel 1'; |