iphpbb - Forenarchiv: Archivbeitrag des Forums http://fh-pirmasens.de.vu
Verfügbare Informationen zu "Aufgaben zu Group By und Having"

  • Qualität des Beitrags:
  • Beteiligte Poster: Marek Opielka
  • Forum: http://fh-pirmasens.de.vu
  • Forenbeschreibung: FH-Pirmasens
  • aus dem Unterforum: Systemanalyse
  • Antworten: 5
  • Forum gestartet am: Donnerstag 08.12.2005
  • Sprache: deutsch
  • Link zum Originaltopic: Aufgaben zu Group By und Having
  • Letzte Antwort: vor 3 Jahren, 6 Monaten, 8 Tagen, 18 Stunden, 42 Minuten
Alle Beiträge und Antworten
Marek Opielka - 25.05.2005, 10:00
Aufgaben zu Group By und Having
1. Leiten Sie hieraus das zugehörigen Relationenschema ab.
2. Schreiben Sie entsprechende Datenbank-Skripte und legen Sie das
Relationenschma in Cloudscape an.
Code:
CREATE TABLE Ausleiher(
   aid INT NOT NULL,
   name VARCHAR(20),
   PRIMARY KEY(aid)
   );

CREATE TABLE Buch(
   bid INT NOT NULL,
   title VARCHAR(50),
   PRIMARY KEY(bid)
   );

CREATE TABLE Buchstatus(
   aid INT,
   bid INT,
   PRIMARY KEY(aid,bid),
   FOREIGN KEY(aid) REFERENCES Ausleiher(aid),
   FOREIGN KEY(bid) REFERENCES Buch(bid)
   );
Marek Opielka - 25.05.2005, 10:02

3. Füllen Sie die Datenbank mit folgendem Inhalt:
Es gibt 5 Ausleiher:
1 Müller
2 Maier
3 Schmidt
4 Kuhn
5 Völler
und 15 Bücher:
1 Titel_1
2 Titel_2
...
15 Titel_15
Müller hat die Bücher 1, 3, 6, 7
Maier die Bücher 2, 8, 11
Völler die Bücher 5,9
und Kuhn das Buch 14 ausgeliehen.

Code:
INSERT INTO Ausleiher VALUES(1,'Müller');
INSERT INTO Ausleiher VALUES(2,'Maier');
INSERT INTO Ausleiher VALUES(3,'Schmidt');
INSERT INTO Ausleiher VALUES(4,'Kuhn');
INSERT INTO Ausleiher VALUES(5,'Völler');

INSERT INTO Buch VALUES(1,'Title_1');
INSERT INTO Buch VALUES(2,'Title_2');
INSERT INTO Buch VALUES(3,'Title_3');
INSERT INTO Buch VALUES(4,'Title_4');
INSERT INTO Buch VALUES(5,'Title_5');
INSERT INTO Buch VALUES(6,'Title_6');
INSERT INTO Buch VALUES(7,'Title_7');
INSERT INTO Buch VALUES(8,'Title_8');
INSERT INTO Buch VALUES(9,'Title_9');
INSERT INTO Buch VALUES(10,'Title_10');
INSERT INTO Buch VALUES(11,'Title_11');
INSERT INTO Buch VALUES(12,'Title_12');
INSERT INTO Buch VALUES(13,'Title_13');
INSERT INTO Buch VALUES(14,'Title_14');
INSERT INTO Buch VALUES(15,'Title_15');

INSERT INTO Buchstatus VALUES(1,1);
INSERT INTO Buchstatus VALUES(1,3);
INSERT INTO Buchstatus VALUES(1,6);
INSERT INTO Buchstatus VALUES(1,7);
INSERT INTO Buchstatus VALUES(2,2);
INSERT INTO Buchstatus VALUES(2,8);
INSERT INTO Buchstatus VALUES(2,11);
INSERT INTO Buchstatus VALUES(5,5);
INSERT INTO Buchstatus VALUES(5,9);
INSERT INTO Buchstatus VALUES(4,14);
Marek Opielka - 25.05.2005, 10:02

4. Schreiben Sie jeweils ein SQL-Statement für folgende Anfragen:
Wie viele Bücher haben die einzelnen Benutzer ausgeliehen? Erzeugen Sie
eine Liste (Ergebnistabelle)

Code:
SELECT a.aid, a.name, count(b.title) AS Anzahl
FROM ausleiher a, buch b, buchstatus bs
WHERE a.aid=bs.aid AND b.bid=bs.bid
GROUP BY a.aid,a.name
Marek Opielka - 25.05.2005, 10:04

Wer hat drei oder mehr als Bücher ausgeliehen? Geben Sie die Namen aus.

Code:
SELECT a.name
FROM ausleiher a, buch b, buchstatus bs
WHERE a.aid=bs.aid AND b.bid=bs.bid
GROUP BY a.aid,a.name
HAVING count(b.title) >=3
Marek Opielka - 25.05.2005, 10:05

Wie viele Bücher sind zur Zeit ausgeliehen?

Code:
SELECT count(b.title) AS Anzahl
FROM ausleiher a, buch b, buchstatus bs
WHERE a.aid=bs.aid AND b.bid=bs.bid
Mit folgendem Code, können Sie den Beitrag ganz bequem auf ihrer Homepage verlinken
Weitere Beiträge aus diesem Forum
Ähnliche Beiträge
Wendys Aufgaben - julia1 (Donnerstag 22.12.2005)
Sayajin Comander Aufgaben - rapstyle (Montag 26.06.2006)
aufgaben m4 - jane (Montag 13.11.2006)
SAR-Aufgaben - Evelyn (Freitag 29.06.2007)
Die aufgaben eines Handwerkers - Killerbraut (Montag 17.10.2005)