PROMPT Wintersemester 1996 PROMPT Leistungsnachweis K 849 Pruefung P2 PROMPT PROMPT Etliche der folgenden Programmzeilen sind nicht Teil PROMPT der Loesung, sondern machen die Zeilen ablauffaehig PROMPT und dienen damit lediglich der Ueberpruefung PROMPT der Korrektheit der Loesung. PROMPT PROMPT Aufgabe 2 PROMPT Anlegen der Tabellen DROP TABLE a; CREATE TABLE a (land NUMBER(10), reg_bez NUMBER(10), kreis NUMBER(10), gem NUMBER(10), gemeindename CHAR(30), gemeindeeinwohneranzahl NUMBER(10)); INSERT INTO a VALUES(08,2,15,047,'Marxzell',1600); INSERT INTO a VALUES(08,2,15,046,'Ettlingen',5200); INSERT INTO a VALUES(08,2,15,045,'Malsch',2900); INSERT INTO a VALUES(08,2,16,031,'Walldorf',7600); INSERT INTO a VALUES(08,2,16,032,'St. Leon-Rot',2800); INSERT INTO a VALUES(08,1,11,000,'Stuttgart',20900); INSERT INTO a VALUES(09,3,35,017,'Dingolfing',32900); SELECT * FROM a; DROP TABLE b; CREATE TABLE b (land NUMBER(10), reg_bez NUMBER(10), kreis NUMBER(10), kreisname CHAR(30)); INSERT INTO b VALUES(08,2,15,'Karlsruhe'); INSERT INTO b VALUES(08,2,16,'Mannheim'); INSERT INTO b VALUES(08,1,11,'Stuttgart'); INSERT INTO b VALUES(09,3,35,'Landshut'); SELECT * FROM b; PROMPT Aufgabe 2 a) DROP TABLE c; CREATE TABLE c (land, reg_bez, kreis, kreiseinwohneranzahl) AS SELECT land, reg_bez, kreis, SUM(gemeindeeinwohneranzahl) FROM a GROUP BY land, reg_bez, kreis; SELECT * FROM c ORDER BY land, reg_bez, kreis; PROMPT Aufgabe 2 b) DROP TABLE d; CREATE TABLE d (land, reg_bez, kreis, kreisname, kreiseinwohneranzahl) AS SELECT c.land, c.reg_bez, c.kreis, b.kreisname, c.kreiseinwohneranzahl FROM b, c WHERE b.land = c.land AND b.reg_bez = c.reg_bez AND b.kreis = c.kreis; SELECT * FROM d; PROMPT Aufgabe 3 PROMPT Anlegen der Tabellen DROP TABLE werte1; CREATE TABLE werte1 (lfd NUMBER(3), s11 NUMBER(3), s12 NUMBER(3)); INSERT INTO werte1 VALUES (1, 1, 4); INSERT INTO werte1 VALUES (2, 1, 3); INSERT INTO werte1 VALUES (3, 2, 2); INSERT INTO werte1 VALUES (4, 2, 1); INSERT INTO werte1 VALUES (5, 2, 4); INSERT INTO werte1 VALUES (6, 2, 3); INSERT INTO werte1 VALUES (7, 1, 2); INSERT INTO werte1 VALUES (8, 1, 1); SELECT * FROM werte1; DROP TABLE werte2; CREATE TABLE werte2 (num NUMBER(3), s21 NUMBER(3), s22 NUMBER(3)); INSERT INTO werte2 VALUES (1, 1, 4); INSERT INTO werte2 VALUES (2, 3, 3); INSERT INTO werte2 VALUES (3, 2, 2); SELECT * FROM werte2; PROMPT Aufgabe 3 a) SELECT * FROM werte1 WHERE s11=2 AND s12 IN (3, 4); PROMPT Aufgabe 3 b) PROMPT UNION SELECT * FROM werte1 UNION SELECT * FROM werte2; PROMPT INTERSECT SELECT * FROM werte1 INTERSECT SELECT * FROM werte2; PROMPT MINUS SELECT * FROM werte1 MINUS SELECT * FROM werte2; PROMPT Aufgabe 3 c) PROMPT ORDER BY s12 desc SELECT * FROM werte1 ORDER BY s12 desc; PROMPT ORDER BY s12 asc SELECT * FROM werte1 ORDER BY s12 asc;