CREATE TABLE Partei (Kuerzel varchar(7) PRIMARY KEY, Name varchar(200));
CREATE TABLE Politiker (Steckbriefnr integer PRIMARY KEY, Vorname varchar(200), Nachname varchar(200), gehoertAn varchar(7),
FOREIGN KEY (gehoertAn) REFERENCES Partei (Kuerzel));
CREATE TABLE Antrag (Aktenzeichen varchar(5) PRIMARY KEY, Name varchar(200), Begruendung text, Antragsteller integer,
FOREIGN KEY (Antragsteller) REFERENCES Politiker (Steckbriefnr) );
CREATE TABLE unterstuetzt (Antrag varchar(5), Partei varchar(7),
FOREIGN KEY (Antrag) REFERENCES Antrag (Aktenzeichen),
FOREIGN KEY (Partei) REFERENCES Partei (Kuerzel));
CREATE TABLE Wahlwerbespot (Name varchar(200), Sendekosten float, Produktionskosten float, Partei varchar(7),
FOREIGN KEY (Partei) REFERENCES Partei (Kuerzel));

INSERT INTO Partei (Kuerzel, Name) VALUES ('ROSA', 'Die rosaroten Hunde');
INSERT INTO Politiker (Steckbriefnr, Vorname, Nachname, gehoertAn) VALUES (13, 'Alice', 'Amann', 'ROSA');
INSERT INTO Politiker (Steckbriefnr, Vorname, Nachname, gehoertAn) VALUES (45, 'Pink', 'Panther', 'ROSA');
INSERT INTO Politiker (Steckbriefnr, Vorname, Nachname, gehoertAn) VALUES (7, 'Bob', 'Baumeister', 'ROSA');
INSERT INTO Antrag (Aktenzeichen, Name, Begruendung, Antragsteller) VALUES
('HUFRI', 'Kostenlose Friseurbesuche für alle Hunde',
'Jeder Hundebesitzer sollte durch seinen Hund Individualität ausdrücken können. Ohne die Möglichkeit des kostenlosen Friseurbesuchs für Hunde werden insbesondere sozial schwache Personen in der Entfaltung ihrer individuellen Persönlichkeit massiv benachteiligt. Zudem sind schwere psychologische Komplexe bei den betroffenen Hunden zu befürchten.', 45);
INSERT INTO unterstuetzt (Antrag, Partei) VALUES ('HUFRI', 'ROSA');
INSERT INTO unterstuetzt (Antrag, Partei) VALUES ('HUFRI', '0BOCK');
INSERT INTO Wahlwerbespot (Name, Sendekosten, Produktionskosten, Partei) VALUES ('Wuff!', 200, 1550, 'ROSA');
INSERT INTO Wahlwerbespot (Name, Sendekosten, Produktionskosten, Partei) VALUES ('Können wir das schaffen?', 4000, 300, 'ROSA');

INSERT INTO Partei (Kuerzel, Name) VALUES ('0BOCK', 'Partei der Politikverdrossenen');
INSERT INTO Politiker (Steckbriefnr, Vorname, Nachname, gehoertAn) VALUES (37, 'Bob', 'Bernig', '0BOCK');
INSERT INTO Politiker (Steckbriefnr, Vorname, Nachname, gehoertAn) VALUES (15, 'Felicia', 'Faulpelz', '0BOCK');
INSERT INTO Antrag (Aktenzeichen, Name, Begruendung, Antragsteller) VALUES
('15MIN', 'Beschränkung von Parlamentssitzung auf maximal 15 Minuten', 'Länger erträgt die Scheiße doch eh keiner!', 37);
INSERT INTO unterstuetzt (Antrag, Partei) VALUES ('15MIN', '0BOCK');
INSERT INTO Antrag (Aktenzeichen, Name, Begruendung, Antragsteller) VALUES
('STEIN', 'Grundrechte für Steine',
'Der Bundestag möge beschließen, Steine und sonstige Festsedimente zu vollwertigen Staatsbürgern zu erklären und somit den vollen Schutz des Grundgesetzes auf sie auszudehnen. Ihre rechtlose Situation und tagtäglich Erniedrigung ist nicht länger hinzunehmen. Insbesondere ihr Missbrauch als sogenannte "Schotter", Unterlagen für Eisenbahnschienen, ist sofort zu stoppen.', 37);
INSERT INTO unterstuetzt (Antrag, Partei) VALUES ('STEIN', '0BOCK');
INSERT INTO unterstuetzt (Antrag, Partei) VALUES ('STEIN', 'ROSA');
INSERT INTO Wahlwerbespot (Name, Sendekosten, Produktionskosten, Partei) VALUES ('Alles scheiße', 1.99, 20, '0BOCK'); 

INSERT INTO Partei (Kuerzel, Name) VALUES ('DDD', 'Denker und Demokraten Deutschlands');
INSERT INTO Politiker (Steckbriefnr, Vorname, Nachname, gehoertAn) VALUES (42, 'Claire', 'Clepto', 'DDD');
INSERT INTO Politiker (Steckbriefnr, Vorname, Nachname, gehoertAn) VALUES (100, 'Hans-Ulrich', 'Wyneken', 'DDD');
INSERT INTO Politiker (Steckbriefnr, Vorname, Nachname, gehoertAn) VALUES (9, 'Ash', 'Ketchum', 'DDD');
INSERT INTO Politiker (Steckbriefnr, Vorname, Nachname, gehoertAn) VALUES (10, 'Pika', 'Chu', 'DDD');
INSERT INTO Antrag (Aktenzeichen, Name, Begruendung, Antragsteller) VALUES
('KLAU', 'Abschaffung von §242 StGB', 'Der Straftatbestand des Diebstahls ist ein Anachronismus, der in unserer heutigen Zeit nicht mehr zweckmäßig ist. Durch seine Abschaffung sind für die öffentliche Hand Einsparungen von mehreren Milliarden Euro im Jahr durch die dann mögliche Verschlankung der Strafverfolgungsbehörden zu erwarten. Stattdessen kann durch eine Besteuerung von Diebesgut eine neue Einnahmequelle erschlossen werden.', 42);
INSERT INTO unterstuetzt (Antrag, Partei) VALUES ('KLAU', '0BOCK');
INSERT INTO Antrag (Aktenzeichen, Name, Begruendung, Antragsteller) VALUES
('ABI', 'Einführung einer Abiturgarantie', 'Ein Bürger mit Haupt- oder Realschulabschluss findet heute kaum noch einen Job. Zur Wiederherstellung der Chancengleichheit wird daher beantragt, jedem deutschen Staatsbürger das Abitur hinterherzuschmeißen. Dies wird Deutschland im internationalen Bildungsvergleich einen Spitzenplatz sichern.', 100);
INSERT INTO unterstuetzt (Antrag, Partei) VALUES ('ABI', 'DDD');
INSERT INTO unterstuetzt (Antrag, Partei) VALUES ('ABI', 'ROSA');
INSERT INTO unterstuetzt (Antrag, Partei) VALUES ('ABI', '0BOCK');
INSERT INTO Antrag (Aktenzeichen, Name, Begruendung, Antragsteller) VALUES
('KAWUMS', 'Donnerblitz', 'Pika-CHUUUUUU!', 10);
INSERT INTO Wahlwerbespot (Name, Sendekosten, Produktionskosten, Partei) VALUES ('Demokratie jetzt!', 22000, 1400, 'DDD');
INSERT INTO Wahlwerbespot (Name, Sendekosten, Produktionskosten, Partei) VALUES ('Distanzierung von unserem ehemaligen Mitglied Frau Clepto', 6000000, 1000000, 'DDD');
INSERT INTO Wahlwerbespot (Name, Sendekosten, Produktionskosten, Partei) VALUES ('Distanzierung von unserem ehemaligen Mitglied Herrn Chu', 250000, 500000, 'DDD');

-- a) Vor- und Nachname der Politikerin mit der Steckbriefnummer 42.
SELECT Vorname, Nachname FROM Politiker WHERE Steckbriefnr = 42;

-- b) Name und Begründung des Antrag mit dem Aktenzeichen KLAU.
SELECT Name, Begruendung FROM Antrag WHERE Aktenzeichen = 'KLAU';

-- c) Sendekosten des Werbespots mit dem Namen „Demokratie jetzt!“.
SELECT Sendekosten FROM Wahlwerbespot WHERE Name = 'Demokratie jetzt!';

-- d) Namen aller Politiker mit dem Namen der Partei, der sie jeweils angehören.
SELECT Nachname, Name FROM Politiker, Partei WHERE gehoertAn = Kuerzel;

-- e) Namen der Parteien, die den Antrag mit dem Aktenzeichen STEIN untrstützen.
SELECT Partei.Name FROM Partei, unterstuetzt WHERE Kuerzel = Partei AND Antrag = 'STEIN';

-- f) Namen aller Parteien, die Webespots mit Sendekosten über 1500 Euro geschaltet haben (wenn Parteien mehrfach im Ergebnis auftauchen, ist das okay).
SELECT Partei.Name FROM Partei, Wahlwerbespot WHERE Partei = Kuerzel AND Sendekosten > 1500;

-- g) Begründungen aller Anträge, die der Politiker mit dem Nachnamen „Bernig“ gestellt hat.
SELECT Begruendung FROM Antrag, Politiker WHERE Antragsteller = Steckbriefnr AND Nachname = 'Bernig';

-- h) Kürzel der Partei des Politikers, der den Antrag mit dem Aktenzeichen KAWUMS gestellt hat.
SELECT gehoertAn FROM Antrag, Politiker WHERE Antragsteller = Steckbriefnr AND Aktenzeichen = 'KAWUMS';

-- i) Name aller Werbespots der Partei, der der Politiker mit Nachnamen Ketchum angehört.
SELECT Wahlwerbespot.Name FROM Wahlwerbespot, Partei, Politiker WHERE Partei = Kuerzel AND gehoertAn = Kuerzel AND Nachname = 'Ketchum';

-- j) Aktenzeichen aller Anträge, die die Partei mit Namen „Denker und Demokraten Deutschlands“ unterstützt.
SELECT Aktenzeichen FROM Antrag, unterstuetzt, Partei WHERE Aktenzeichen = ANTRAG AND Partei = Kuerzel AND Partei.Name = "Denker und Demokraten Deutschlands";

-- k) Aktenzeichen aller Anträge, die Politiker der Partei mit Namen „Denker und Demokraten Deutschlands“ eingereicht haben.
SELECT Aktenzeichen FROM Antrag, Politiker, Partei WHERE Antragsteller = Steckbriefnr AND gehoertAn = Kuerzel AND Partei.Name = "Denker und Demokraten Deutschlands";

-- l) Vor- und Nachnamen aller Politiker, die Anträge gestellt haben, die von ihrer eigenen Partei unterstützt werden.
SELECT Vorname, Nachname FROM Politiker, Antrag, unterstuetzt WHERE Steckbriefnr = Antragsteller AND Aktenzeichen = Antrag AND gehoertAN = Partei;

-- m) Namen aller Werbespots der Partei, die den Antrag mit Namen „Grundrechte für Steine“ unterstützen.
SELECT Wahlwerbespot.Name FROM Wahlwerbespot, Partei, unterstuetzt, Antrag WHERE Wahlwerbespot.Partei = Kuerzel AND Kuerzel = unterstuetzt.Partei AND Antrag = Aktenzeichen AND Antrag.Name = 'Grundrechte für Steine';

