Neu organisiert für neues Schuljahr
This commit is contained in:
84
11fi5/AWP/2021-07-22 Prüfungsaufgaben.sql
Normal file
84
11fi5/AWP/2021-07-22 Prüfungsaufgaben.sql
Normal file
@ -0,0 +1,84 @@
|
||||
#A
|
||||
#1
|
||||
|
||||
SELECT * FROM Artikel
|
||||
WHERE LOWER(Art_Bezeichnung) LIKE "%schmerzmittel%";
|
||||
|
||||
#2
|
||||
|
||||
SELECT Kunde.*, SUM(RgPos_Menge*RgPos_Preis) FROM Kunde
|
||||
JOIN Rechnung ON Kunde.Kd_Id = Rechnung.Rg_KdId
|
||||
JOIN RechnungPosition ON Rechnung.Rg_Id = RechnungPosition.RgPos_RgID
|
||||
GROUP BY Kunde.Kd_Id
|
||||
ORDER BY SUM(RgPos_Menge*RgPos_Preis) DESC;
|
||||
|
||||
#3
|
||||
|
||||
SELECT Art_Id, Art_Nummer, Art_Bezeichnung, Art_Preis,
|
||||
SUM(RechnungPosition.RgPos_Menge) AS MengeGesamt,
|
||||
COUNT(RechnungPosition.RgPos_Id) AS AnzahlRechPos FROM Artikel
|
||||
JOIN RechnungPosition ON Artikel.Art_Id = RechnungPosition.RgPos_ArtId
|
||||
GROUP BY Art_Id;
|
||||
|
||||
#4
|
||||
|
||||
SELECT LEFT(Kunde.Kd_PLZ, 1) AS Gebiet, SUM(RgPos_Menge*RgPos_Preis) AS Umsatz FROM Kunde
|
||||
LEFT JOIN Rechnung ON Kunde.Kd_Id = Rechnung.Rg_KdId
|
||||
LEFT JOIN RechnungPosition ON Rechnung.Rg_Id = RechnungPosition.RgPos_RgID
|
||||
GROUP BY LEFT(Kunde.Kd_PLZ, 1)
|
||||
ORDER BY SUM(RgPos_Menge*RgPos_Preis) DESC;
|
||||
|
||||
#B
|
||||
#1
|
||||
CREATE TABLE Lieferant (
|
||||
Lieferer_Nr INT AUTO_INCREMENT,
|
||||
Firma VARCHAR(30),
|
||||
Strasse VARCHAR(30),
|
||||
PLZ VARCHAR(10),
|
||||
Ort VARCHAR(30),
|
||||
BLZ VARCHAR(30),
|
||||
Konto_Nr VARCHAR(30),
|
||||
PRIMARY KEY(Lieferer_Nr),
|
||||
FOREIGN KEY(BLZ) REFERENCES Bank(BLZ)
|
||||
);
|
||||
|
||||
#2
|
||||
ALTER TABLE Lieferant
|
||||
ADD Telefonnummer VARCHAR(30);
|
||||
|
||||
#3
|
||||
ALTER TABLE Artikel
|
||||
MODIFY Artikelnummer INT PRIMARY KEY;
|
||||
|
||||
#4
|
||||
DELETE FROM Lieferant
|
||||
WHERE Lieferant.Lieferer_Nr = 2;
|
||||
|
||||
#5
|
||||
SELECT Artikel.*, Lieferant.* FROM Artikel
|
||||
LEFT JOIN Artikel_Lieferbeziehung ON Artikel.Artikel_Nr = Artikel_Lieferbeziehung.Artikel_Nr
|
||||
LEFT JOIN Lieferant.Lieferer_Nr = Artikel_Lieferbeziehung.Lieferer_Nr;
|
||||
|
||||
#6
|
||||
DROP TABLE Artikel;
|
||||
#Eine Tabelle die an anderen Stellen referenziert wird
|
||||
#kann nicht gelöscht werden ohne die Datenintegrität zu zerstören
|
||||
|
||||
#7
|
||||
INSERT INTO Artikel(Artikel_Nr, Artikel, Bestand, Meldebestand) VALUES
|
||||
(111, "PC", 10, 4);
|
||||
|
||||
#8
|
||||
UPDATE Artikel SET Artikel="PC Klasse" WHERE Artikel_Nr=111;
|
||||
|
||||
#9
|
||||
SELECT Lieferant.*, Artikel.* FROM Lieferant
|
||||
LEFT JOIN Artikel_Lieferbeziehung ON Lieferant.Lieferer_Nr = Artikel_Lieferbeziehung.Lieferer_Nr;
|
||||
LEFT JOIN Artikel ON Artikel.Artikel_Nr = Artikel_Lieferbeziehung.Artikel_Nr;
|
||||
|
||||
#10
|
||||
SELECT Artikel.Artikel FROM Artikel
|
||||
JOIN Artikel_Lieferbeziehung ON Artikel.Artikel_Nr = Artikel_Lieferbeziehung.Artikel_Nr
|
||||
WHERE Artikel_Lieferbeziehung.Einkaufspreis = (
|
||||
SELECT MAX(Artikel_Lieferbeziehung.Einkaufspreis) FROM Artikel_Lieferbeziehung
|
||||
);
|
||||
Reference in New Issue
Block a user