53 lines
774 B
Markdown
53 lines
774 B
Markdown
1
|
||
a)
|
||
```SQL
|
||
create or REPLACE FUNCTION summeWarenkorb(kID in number) RETURN NUMBER
|
||
|
||
IS
|
||
|
||
output number DEFAULT 0;
|
||
|
||
BEGIN
|
||
|
||
SELECT SUM(PREIS*anzahl) into output
|
||
|
||
From WARENKORB
|
||
|
||
join ARTIKEL on WARENKORB.ARTIKELNUMMER=ARTIKEL.ARTIKELNUMMER
|
||
|
||
WHERE KUNDENNUMMER=kID;
|
||
|
||
RETURN output;
|
||
|
||
END;
|
||
```
|
||
```SQL
|
||
SELECT Kundennummer, summeWarenkorb(Kundennummer) FROM Kunde WHERE summeWarenkorb(Kundennummer) IS NOT NULL;
|
||
```
|
||
b)
|
||
```SQL
|
||
CREATE OR REPLACE FUNCTION Lagerbestandabfrage (artnr IN NUMBER) RETURN number
|
||
|
||
IS
|
||
|
||
output number default 0;
|
||
|
||
BEGIN
|
||
|
||
SELECT sum(LAGERBESTAND) into output
|
||
|
||
FROM LAGER
|
||
|
||
WHERE ANUMMER=artnr;
|
||
|
||
RETURN output;
|
||
|
||
END;
|
||
```
|
||
```SQL
|
||
SELECT DISTINCT ANummer, Lagerbestandabfrage(ANummer) FROM lager;
|
||
```
|
||
|
||
2
|
||
a)
|