b) 1. π Vorname,Nachname,Anrede σ Anrede='Herr' ∧ Nachname ≥ 'D' ∧ Nachname < 'E'Kunde 2. π Vorname σ Anrede='Frau' ∧ Plz='39846' Kunde 3. π Artikelname σ Standort='INF'(Lager ⨝ ANummer=Artikelnummer Artikel) 4. π Bestellnummer,Bestellstatus,Vorname,Nachname σ Anrede='Herr' ∧ Bestellstatus='bestaetigt' (Kunde ⨝ Kundennummer=Kundennummer Bestellung ) 5. π Plz,Strasse,Nachname,Wunschterminσ Wunschtermin≥'23.07.2016'∧ Wunschtermin <'24.07.2016' (Kunde ⨝ Kundennummer=Kundennummer Bestellung) 2 d 1. SELECT \* FROM Artikel order by preis 2. SELECT vorname, nachname, geburtsdatum FROM kunde WHERE vorname like 'M%' ORDER by geburtsdatum 3. SELECT COUNT(\*) FROM kunde WHERE anrede = 'Frau' 4. select * from kunde where anrede='Frau' order by geburtsdatum DESC FETCH FIRST 1 ROW ONLY; 3. a) ``` CREATE OR REPLACE TRIGGER vor_insert_bestellposition BEFORE INSERT ON Bestellposition FOR EACH ROW DECLARE     anzahl_bestellungen NUMBER; BEGIN     -- Zählen Sie die Anzahl der Bestellungen für den Artikel     SELECT COUNT(*)     INTO anzahl_bestellungen     FROM Bestellposition     WHERE Artikelnummer = :NEW.Artikelnummer;     -- Überprüfen Sie, ob der Artikel mindestens fünfmal bestellt wurde     IF anzahl_bestellungen >= 5 THEN         -- Fügen Sie einen Rabatt von 10% hinzu         :NEW.Reduktion := 10;     END IF; END; ``` b) ``` CREATE OR REPLACE PROCEDURE deleteOrder(p_idBestellung IN NUMBER) AS BEGIN     -- Löschen von Bestellpositionen für die angegebene Bestellung     DELETE FROM Bestellposition     WHERE Bestellnummer = p_idBestellung;     -- Löschen der Bestellung     DELETE FROM Bestellung     WHERE Bestellnummer = p_idBestellung;     -- Commit der Transaktion     COMMIT; END deleteOrder; ``` ``` BEGIN     deleteOrder(50); END; ``` c) ``` create or replace VIEW lol as Select     B.Bestellnummer,     B.Kundennummer,     B.Bestelldatum,     BP.Anzahl,     A.Artikelname,     A.Preis From bestellung B join Bestellposition BP on B.Bestellnummer = BP.Bestellnummer join artikel A on BP.Artikelnummer = A.Artikelnummer ```