Ubungsblatt 2 - Technologie der Informationssysteme

Werbung
Christian-Albrechts-Universität zu Kiel
Institut für Informatik
Arbeitsgruppe Technologie der Informationssysteme
Prof. Dr. B. Thalheim
Dipl.-Inf. O. Sörensen
Sommer 2013
Übungsblatt 2
Übungen zur Vorlesung Datenbankprogrammierung
Übungsblatt 2
Themen: Temporale Daten
Aufgabe 1
(10 Punkte) Gegeben sei folgendes relationales Schema:
CREATE TABLE purchases (
id SERIAL,
n varchar(255) NOT NULL, -- Kundenname, eindeutig identifizierend
d date NOT NULL,
-- Kaufdatum
i varchar(50) NOT NULL, -- Artikelnummer
PRIMARY KEY (id)
);
Formulieren Sie die folgenden Anfragen in SQL. Verzichten Sie auf die Benutzung temporärer Tabellen. Sie können PostgreSQL 9.2 spezifische Funktionen benutzen. Auf der zur Übung gehörenden
Website finden Sie ein SQL Skript das zu dieser Aufgabe passende Daten enthält. Testen Sie Ihre
Anfragen gegen diesen Datensatz.
a) Für jeden Kunden jeder Artikel, den er zwei Monate hintereinander an demselben Tag gekauft
hat; z.B. am 15.03.2000 und am 15.04.2000. (1 Punkt)
b) Für jeden Kunden die Zeitspanne, in der er aktiv war. D.h. die Anzahl an Tagen, die zwischen
seinem ersten und letztem Einkauf lagen. (1 Punkt)
c) Alle Umsätze, die im Februar oder März eines Schaltjahres anfielen. (1 Punkt)
d) Jedes Paar von Kunden mit mehr als je einem einzigen Einkauf, deren aktive Zeitspannen sich
überlappen. (1 Punkt)
e) Start- und Enddatum der maximalen Zeitspanne(n) mit der Eigenschaft, daß jeden Tag ein
Einkauf irgendeines Kunden stattgefunden hat. (2 Punkte)
f) Für den gesamten Zeitraum, der durch den Datenbankzustand abgedeckt wird, die Anzahl aller
Einkäufe in jedem Monat. Auch Monate ohne Umsätze die zwischen getätigten Einkäufen
liegen, sollen mit 0“ Transaktionen auftauchen. (2 Punkte)
”
g) Alle Umsätze, die am letzten Freitag eines Monats anfielen. (2 Punkte)
Abgabe: bis Freitag, 24. Mai 2013, 08:00 Uhr per Email an [email protected] als
plain text. Der Eingang wird innerhalb von 24 Stunden nach dem Empfang bestätigt.
Viel Erfolg!
Herunterladen