Neu organisiert für neues Schuljahr

This commit is contained in:
Janik
2021-09-21 11:35:05 +02:00
parent b4f3fc83d2
commit 255b72506c
46 changed files with 11 additions and 0 deletions

View File

@ -0,0 +1,48 @@
drop database if exists 2020_21_Ex2;
create database if not exists 2020_21_Ex2;
use 2020_21_Ex2;
create table zimmer(
zid int(11) primary key,
anzahlBetten int(11),
preis double);
create table gast(
gid int (11),
name varchar(50),
strasse varchar(50),
ort varchar(50),
raucher varchar(4));
ALTER TABLE gast
MODIFY COLUMN raucher BOOLEAN;
ALTER TABLE gast
CHANGE COLUMN gid gnr INT;
ALTER TABLE gast
ADD PRIMARY KEY(gnr);
CREATE TABLE buchung(
zid INT,
gnr INT,
bid INT,
von DATETIME,
bis DATETIME,
PRIMARY KEY (zid, gnr, bid),
FOREIGN KEY (gnr) REFERENCES gast(gnr),
FOREIGN KEY (zid) REFERENCES zimmer(zid)
);
ALTER TABLE gast CHANGE NAME nachname VARCHAR(50);
ALTER TABLE gast RENAME TO kunde;
INSERT INTO zimmer (zid, anzahlBetten) VALUES
(1,2), (2,1), (3,2);
UPDATE zimmer SET preis=45.99;
DELETE FROM zimmer WHERE zid=2;
#alternativ where anzahlBetten=1

View File

@ -0,0 +1,83 @@
USE `unternehmensdb`;
#1
SELECT AVG(gehalt) FROM mitarbeiter;
#2
SELECT MAX(bestellmenge) FROM posten;
#3
SELECT vorname, name FROM kunde
ORDER BY vorname, name
LIMIT 1;
#4
SELECT COUNT(*), hersteller.name, hersteller.herstellernr FROM artikel
JOIN hersteller ON hersteller.herstellernr = artikel.hersteller
GROUP BY artikel.hersteller
ORDER BY COUNT(*) DESC;
#5
SELECT COUNT(*), hersteller.name, hersteller.herstellernr FROM artikel
JOIN hersteller ON hersteller.herstellernr = artikel.hersteller
GROUP BY artikel.hersteller
ORDER BY COUNT(*) DESC
LIMIT 2;
#6
SELECT AVG(gehalt), abteilung FROM mitarbeiter
GROUP BY abteilung;
#7
SELECT COUNT(*), ort, plz FROM kunde
GROUP BY ort
ORDER BY COUNT(*) DESC;
#8
SELECT COUNT(*), ort, plz FROM kunde
GROUP BY ort
ORDER BY COUNT(*) DESC, ort;
#9
SELECT COUNT(*), kategorie FROM artikel
WHERE nettopreis > 50
GROUP BY kategorie;
#10
SELECT bestellnr, SUM(bestellmenge) FROM posten
GROUP BY bestellnr
HAVING SUM(bestellmenge) > 4;
#11
SELECT hersteller, COUNT(*) FROM artikel
GROUP BY hersteller;
USE `luna2_innodb`;
#20
SELECT * FROM tblmitarbeiter
JOIN tbltaetigkeit ON tblmitarbeiter.M_Nr = tbltaetigkeit.M_Nr
GROUP BY P_Nr, T_Taetigkeit;
#21
SELECT MIN(M_Nr) FROM tblmitarbeiter;
#22
SELECT SUM(P_Mittel) FROM tblprojekt;
#23
SELECT AVG(P_Mittel) FROM tblprojekt
WHERE P_Mittel > 100000;
#24
SELECT P_Nr, COUNT(DISTINCT T_Taetigkeit) FROM tbltaetigkeit
GROUP BY P_Nr;
#25
SELECT P_Nr, COUNT(M_Nr) FROM tbltaetigkeit
GROUP BY P_Nr;
#26
SELECT T_Taetigkeit, COUNT(M_Nr) FROM tbltaetigkeit
GROUP BY T_Taetigkeit;

View File

@ -0,0 +1,32 @@
USE `unternehmensdb`;
#Aufgabe 1
SELECT artikelnr, bezeichnung, kategorie FROM artikel
ORDER BY kategorie, bezeichnung;
SELECT name, gehalt, abteilung FROM mitarbeiter
ORDER BY gehalt DESC, abteilung ASC;
SELECT artikelnr, bezeichnung, kategorie, nettopreis FROM artikel
WHERE kategorie = 4
ORDER BY nettopreis DESC;
SELECT kundennr, name, plz, zahlungsart FROM kunde
WHERE zahlungsart = "N"
ORDER BY plz;
#Aufgabe 2
SELECT AVG(gehalt) FROM mitarbeiter;
SELECT MAX(bestellmenge) FROM posten;
SELECT vorname, name FROM kunde
ORDER BY vorname, name
LIMIT 1;
SELECT hersteller, COUNT(*) FROM artikel
GROUP BY hersteller
ORDER BY COUNT(*) DESC
LIMIT 2;

View File

@ -0,0 +1,46 @@
USE `Kosidasdb`;
SELECT AVG(gehalt) FROM mitarbeiter
WHERE plzid = 6;
SELECT plzid, AVG(gehalt) FROM mitarbeiter
GROUP BY plzid;
SELECT plzid, geschlecht, COUNT(*) FROM mitarbeiter
GROUP BY plzid, geschlecht;
SELECT MAX(preis), AVG(preis), MIN(preis) FROM artikel
GROUP BY kategorie;
SELECT kategorie, COUNT(*) FROM artikel
GROUP BY kategorie
HAVING COUNT(*) > 5;
SELECT kategorie, COUNT(*) FROM artikel
WHERE preis > 50
GROUP BY kategorie;
SELECT kategorie, COUNT(*) FROM artikel
WHERE preis > 50
GROUP BY kategorie
HAVING COUNT(*) > 2;
SELECT plzid, AVG(gehalt) FROM mitarbeiter
GROUP BY plzid
HAVING COUNT(*) >= 2;
SELECT kategorie, AVG(Preis) FROM artikel
GROUP BY kategorie
HAVING AVG(Preis) > 30;
SELECT bestellid, COUNT(*) FROM posten
GROUP BY bestellid;
SELECT kategorie, COUNT(DISTINCT farbe) FROM artikel
GROUP BY kategorie
ORDER BY COUNT(DISTINCT farbe) DESC
LIMIT 1;
SELECT kategorie, COUNT(*) FROM artikel
GROUP BY kategorie
HAVING (SUM(preis) < 600) AND (COUNT(*) < 20);

View File

@ -0,0 +1,79 @@
USE `luna2_innodb`;
#a
SELECT DISTINCT A_Nr FROM tblmitarbeiter
WHERE M_Nr IN (
SELECT M_Nr FROM tbltaetigkeit
WHERE P_Nr = "p3");
#b
SELECT DISTINCT P_Nr FROM tbltaetigkeit
WHERE M_Nr < (
SELECT MIN(M_Nr) FROM tblmitarbeiter
WHERE M_Name = "Müller");
#c
SELECT * FROM tblmitarbeiter
WHERE A_Nr IN (
SELECT A_Nr FROM tblabteilung
WHERE A_Stadt = "München");
#d
SELECT M_Name FROM tblmitarbeiter
WHERE M_Nr IN (
SELECT M_Nr FROM tbltaetigkeit
WHERE P_Nr IN (
SELECT P_Nr FROM tblprojekt
WHERE P_Name = "Apollo"
)
);
#e
#wat
SELECT MIN(M_Nr) FROM tblmitarbeiter;
#f
SELECT M_Nr, M_Name FROM tblmitarbeiter
WHERE M_Nr = (SELECT MIN(M_Nr) FROM tblmitarbeiter);
#g
SELECT M_Nr FROM tblmitarbeiter
WHERE M_Nr IN (
SELECT M_Nr FROM tbltaetigkeit
WHERE T_Taetigkeit = "Projektleiter" AND T_Einstellungsdatum = (
SELECT MAX(T_Einstellungsdatum) FROM tbltaetigkeit
WHERE T_Taetigkeit = "Projektleiter"
)
);
#h
SELECT SUM(P_Mittel) FROM tblprojekt;
#i
SELECT AVG(P_Mittel) FROM tblprojekt
WHERE P_Mittel > 100000;
#j
SELECT P_Nr, COUNT(DISTINCT T_Taetigkeit) FROM tbltaetigkeit
GROUP BY P_Nr;
#k
SELECT P_Nr, COUNT(DISTINCT M_Nr) FROM tbltaetigkeit
GROUP BY P_Nr;
#l
SELECT T_Taetigkeit, COUNT(DISTINCT M_Nr) FROM tbltaetigkeit
GROUP BY T_Taetigkeit;
#m
SELECT P_Nr FROM tbltaetigkeit
GROUP BY P_Nr
HAVING COUNT(DISTINCT M_Nr) < 4;

View File

@ -0,0 +1,71 @@
USE `unternehmensdb`;
#1
SELECT Name, Vorname, Bezeichnung as "Abteilung" FROM mitarbeiter, abteilung
WHERE mitarbeiter.ABTEILUNG = abteilung.ABTEILUNGSNR;
#2
SELECT Bezeichnung, Nettopreis, Name FROM artikel, hersteller
WHERE artikel.HERSTELLER = hersteller.HERSTELLERNR;
#3
SELECT Bezeichnung, Bestellmenge, kunde.Kundennr, Vorname, Name FROM kunde, bestellung, posten, artikel
WHERE kunde.KUNDENNR = bestellung.KUNDENNR
AND bestellung.KUNDENNR = posten.BESTELLNR
AND posten.ARTIKELNR = artikel.ARTIKELNR;
USE `luna2_innodb`;
#1
SELECT M_Nr, M_Name, M_Vorname, tblmitarbeiter.A_Nr, A_Stadt FROM tblmitarbeiter, tblabteilung
WHERE tblmitarbeiter.A_Nr = tblabteilung.A_Nr;
#2
SELECT * FROM tblmitarbeiter, tblprojekt, tbltaetigkeit
WHERE tblmitarbeiter.M_Nr = tbltaetigkeit.M_Nr
AND tbltaetigkeit.P_Nr = tblprojekt.P_Nr
AND P_Name like "Gemini";
#3
SELECT DISTINCT A_Nr FROM tblmitarbeiter, tbltaetigkeit
WHERE tblmitarbeiter.M_Nr = tbltaetigkeit.M_Nr
AND T_Einstellungsdatum = "1989-10-15";
#4 falsch, aufgabe falsch gelesen
SELECT M_Name, M_Vorname FROM tblmitarbeiter, tblabteilung
WHERE tblmitarbeiter.A_Nr = tblabteilung.A_Nr
AND A_Stadt = "Stuttgart";
#5
SELECT DISTINCT P_Name FROM tblprojekt, tbltaetigkeit, tblmitarbeiter, tblabteilung
WHERE tblprojekt.P_Nr = tbltaetigkeit.P_Nr
AND tbltaetigkeit.M_Nr = tblmitarbeiter.M_Nr
AND tblmitarbeiter.A_Nr = tblabteilung.A_Nr
AND tblabteilung.A_Name = "Diagnose";
#6
SELECT * FROM tblabteilung
WHERE A_Stadt IN (
SELECT A_Stadt FROM tblabteilung
GROUP BY A_Stadt
HAVING COUNT(*) > 1
);
SELECT a2.* FROM tblabteilung a1, tblabteilung a2
WHERE a1.A_Stadt = a2.A_Stadt
AND a1.A_Nr != a2.A_Nr;

View 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
);

View File

@ -0,0 +1,46 @@
# Rechnungserstellung
## Tabellen
|Kunden||
|-|-|
|KundenNr|INT PRIMARY KEY|
|Name|VARCHAR(24)|
|Straße|VARCHAR(24)|
|Hausnummer|INT|
|PLZ|VARCHAR(10)|
|Ort|VARCHAR(24)|
|Rechnungen||
|-|-|
|Nummer|INT PRIMARY KEY|
|Datum|DATE|
|KundenNr|INT FOREIGN KEY -> Kunden(KundenNr)|
|Position||
|-|-|
|ID|INT PRIMARY KEY|
|Rechnung|INT FOREIGN KEY -> Rechnungen(Nummer)|
|AuftragsNummer|INT|
|Kurier-ID|VARCHAR(10)|
|Art|INT|
|Datum|DATE|
|Lieferzeit|TIME|
|Preiselement||
|-|-|
|ID|INT PRIMARY KEY|
|PositionID|INT FOREIGN KEY -> Position(ID)|
|Art|INT FOREIGN KEY -> Preisart(ID)|
|Menge|FLOAT|
|Preisart||
|-|-|
|ID|INT PRIMARY KEY|
|Beschreibung|VARCHAR(36)|
|EinheitID|INT FOREIGN KEY -> Einheiten(ID)|
|Einheiten||
|-|-|
|ID|INT PRIMARY KEY|
|Einheit|VARCHAR(8)|

View File

@ -0,0 +1,38 @@
#1
CREATE USER Zilles;
CREATE USER Steinam;
CREATE USER Zobel;
CREATE USER Lange;
#2
SELECT * FROM mysql.user;
#3
GRANT UPDATE('Position') ON nordwind.Personal TO Steinam;
#4
GRANT SELECT ON nordwind.* TO Lange;
#5
GRANT ALL PRIVILEGES ON *.* TO Zilles;
#6
GRANT INSERT, UPDATE ON nordwind.Kunden TO Zobel;
#7
FLUSH PRIVILEGES;
#8
SELECT * FROM mysql.user
WHERE User = 'Lange';
#alternativ
SHOW GRANTS FOR Lange;
#9
REVOKE SELECT ON nordwind.* FROM Lange;
#10
REVOKE ALL PRIVILEGES ON *.* FROM Zilles;
#11
DROP USER Zobel;

View File

@ -0,0 +1,148 @@
#1
SELECT * FROM Verein;
#2
SELECT * FROM Verein
WHERE Liga = 1;
#3
SELECT MIN(Datum) FROM Spiel, Verein
WHERE Spiel.Heim = Verein.V_ID;
#4
SELECT Liga_Nr, Verband, Rekordspieler FROM Liga;
#5
SELECT Liga_Nr, Erstaustragung, Meister
FROM Liga
WHERE Spiele_Rekordspieler > 500;
#6
SELECT MIN(Datum) FROM Spiel;
#7
SELECT SUM(Spiele_Rekordspieler) FROM Liga;
#8
SELECT * FROM Spieler
WHERE Tore > 5
ORDER BY Tore DESC;
#9
SELECT COUNT(*) AS ANZAHL FROM Spieler
WHERE Trikot_Nr = 12;
#10
SELECT * FROM Spieler
WHERE Land = "Deutschland"
AND Spiele = 0;
#11
SELECT * FROM Spiel
WHERE Spieltag = 1
AND Uhrzeit > "17:00:00";
#12
SELECT Rekordspieler, Spiele_Rekordspieler FROM Liga
WHERE Liga_Nr = 2;
#13
SELECT AVG(Tore) FROM Spieler
WHERE Spiele > 10
AND Vorlagen > 3;
#14
SELECT * FROM Spiel
WHERE MONTH(Datum) = 1
AND Uhrzeit > "19:00:00";
#Abfragen über mehrere Tabellen
#15
SELECT Verein.Name FROM Verein, Liga
WHERE Liga.Meister = Verein.V_ID
AND Liga.Liga_Nr = 1;
#16
SELECT V_ID FROM Verein
WHERE Name = "Dynamo Dresden";
SELECT Verein.Name FROM Spiel, Verein
WHERE Spiel.Heim = Verein.V_ID
AND Gast = 43
AND Spiel.Spieltag = 1
#17
SELECT Spieler.* FROM Spieler, Verein
WHERE Spieler.Vereins_ID = Verein.V_ID
AND Verein.Name = "FC Bayern München"
ORDER BY Spieler.Trikot_Nr ASC;
#18
SELECT Spieler_Name, Land
FROM Spieler, Verein
WHERE Vereins_ID = V_ID AND V_ID = ( SELECT V_ID
FROM Verein
WHERE Name = "FC Augsburg" )
#19
SELECT Verein.Name, COUNT(Spieler.Spieler_ID) FROM Verein, Spieler
WHERE Spieler.Vereins_ID = Verein.V_ID
AND Verein.Liga = 1
GROUP BY Verein.V_ID
#20
SELECT DISTINCT Datum FROM Spiel, Verein
WHERE Spiel.Heim = Verein.V_ID
AND Verein.Liga = 1;
#21
SELECT Verein.Name FROM Verein, Spieler
WHERE Verein.V_ID = Spieler.Vereins_ID
GROUP BY Verein.V_ID
HAVING SUM(Spieler.Tore) >= ALL (
SELECT SUM(Spieler.Tore) FROM Verein, Spieler
WHERE Verein.V_ID = Spieler.Vereins_ID
GROUP BY Verein.V_ID
);
#22
SELECT SUM(Spieler.Tore) FROM Spieler, Verein
WHERE Spieler.Vereins_ID = Verein.V_ID
GROUP BY Verein.Liga;
#23
SELECT Spieler.Spieler_Name, Spieler.Spiele, Spieler.Tore, Spieler.Vorlagen, Verein.Name FROM Spieler, Verein
WHERE Spieler.Vereins_ID = Verein.V_ID
AND Spieler.Land = "Brasilien"
AND Verein.Liga = 1;
#24
SELECT Spieler.Spieler_Name, Spieler.Trikot_Nr, Spieler.Tore FROM Spieler, Verein
WHERE Spieler.Vereins_ID = Verein.V_ID
AND Verein.Liga = 2
AND Spieler.Tore > 10
ORDER BY Spieler.Tore DESC;
#25
SELECT IF(Heim = 10, Gast.Name, Heim.Name) as Sieger, CONCAT(Heim.Name, " vs ", Gast.Name) AS Spiel, CONCAT(Tore_Heim, ":", Tore_Gast) FROM Spiel, Verein AS Heim, Verein AS Gast
WHERE Spiel.Heim = Heim.V_ID
AND Spiel.Gast = Gast.V_ID
AND (Heim = 10 OR Gast = 10)
AND IF(Heim = 10, Tore_Gast > Tore_Heim, Tore_Heim > Tore_Gast) = 1
#26
SELECT * FROM Spieler, Verein
WHERE Spieler.Vereins_ID = Verein.V_ID
AND Verein.Name = "1. FC Nürnberg"
AND Spieler.Tore = (
SELECT MAX(Spieler.Tore) FROM Spieler, Verein
WHERE Spieler.Vereins_ID = Verein.V_ID
AND Verein.Name = "1. FC Nürnberg"
);
#27
SELECT Heim.Name as Heim, Concat(Spiel.Tore_Heim, ":", Spiel.Tore_Gast) AS Ergebnis, Gast.Name as Gast FROM Spiel, Verein as Heim, Verein as Gast
WHERE Spiel.Heim = Heim.V_ID
AND Spiel.Gast = Gast.V_ID
AND Spiel.Spieltag = 1;

View File

@ -0,0 +1,67 @@
# Bundesliga Anmerkungen zu Aufgaben
Die Datenbank ist schon ganz schön ranzig; redundante Daten (und dadurch auch nicht ordentlich normalisiert), inkonsistente Benahmung der Felder...
## Aufgabe 5 Ausgabe
Liga_Nr | Erstaustragung | Meister
--- | --- | ---
1 | 1963-08-24 | 4
2 | 1974-08-02 | 10
## Aufgabe 10
Das Land ist "Deutschland" und nicht "D"
## Aufgabe 11
Es gibt keine Spiele am Spieltag 1, die nach 17 Uhr begonnen haben.
## Aufgabe 14
Es gibt keine Spiele im August, deswegen habe ich hier den Januar genommen.
## Aufgabe 16
Die Aufgabe ist komplizierter als sich der Aufgabensteller gedacht hat, da Dynamo Dresden auch Heim-Verein sein könnte. Ich habe mal so getan als wüsste ich das nicht...
## Aufgabe 18 Ausgabe
Spieler_Name | Land
--- | ---
Rafal Gikiewicz | Polen
Tomas Koubek | Tschechien
Benjamin Leneis | Deutschland
Jeffrey Gouweleeuw | Niederlande
Felix Ohis Uduokhai | Deutschland
Robert Gumny | Polen
Reece Oxford | England
Raphael Framberger | Deutschland
Iago | Brasilien
Mads Pedersen | Dänemark
Marek Suchý | Tschechien
Daniel Caligiuri | Italien
Ruben Vargas | Schweiz
Andre Hahn | Deutschland
Marco Richter | Deutschland
Tobias Strobl | Deutschland
Carlos Gruezo | Ecuador
Rani Khedira | Deutschland
Fredrik Jensen | Finnland
László Bénes | Slowakei
Noah Joel Sarenren Bazee | Deutschland
Tim Civeja | Deutschland
Dion Berisha | Kosovo
Florian Niederlechner | Deutschland
Michael Gregoritsch | Österreich
Alfred Finnbogason | Island
Lukas Petkov | Deutschland
Seong-Hoon Cheon | Republik Korea (Südkorea)
Maurice Malone | Deutschland
Georg Teigl | Österreich
Caiuby | Brasilien
## Aufgabe 25
Selbes wie Aufgabe 16, hier hab ichs mal gemacht

52
11fi5/AWP/DDL.sql Normal file
View File

@ -0,0 +1,52 @@
DROP DATABASE IF EXISTS awp_11fi5_ddl;
CREATE DATABASE awp_11fi5_ddl;
USE awp_11fi5_ddl;
CREATE TABLE Kunde(
Kundennummer INT AUTO_INCREMENT,
PRIMARY KEY(Kundennummer)
);
CREATE TABLE Gerät(
GID INT AUTO_INCREMENT,
Lieferdatum DATE,
Einkaufspreis DEC(12,2),
Kundennummer INT,
Standort VARCHAR(45),
Wartungsvertrag BOOL,
letzte_Wartung DATE,
PRIMARY KEY(GID),
FOREIGN KEY(Kundennummer) REFERENCES Kunde(Kundennummer)
);
CREATE TABLE Zubehör(
Zubehörnummer VARCHAR(6),
PRIMARY KEY(Zubehörnummer)
);
CREATE TABLE Zählerablesungen(
ZID INT AUTO_INCREMENT,
Datum DATE,
Zählerstand INT,
PRIMARY KEY(ZID)
);
CREATE TABLE Kostenarten(
KARTID INT AUTO_INCREMENT,
Kostanart VARCHAR(45),
PRIMARY KEY(KARTID)
);
CREATE TABLE Kosten(
KID INT AUTO_INCREMENT,
Datum DATE,
KARTID INT,
Betrag DEC(12,2),
Bemerkung VARCHAR(45),
PRIMARY KEY(KID),
FOREIGN KEY(KARTID) REFERENCES Kostenarten(KARTID)
);
CREATE TABLE Störungen(
#TODO

View File

@ -0,0 +1,43 @@
USE IT_Concept;
INSERT INTO tblKostenart(KostenartID, Kostenart) VALUES
(1, "Wartung"), (2, "Miete"), (3, "Papier");
INSERT INTO tblKunde(Kundennr) VALUES
(5674), (5675), (5676);
INSERT INTO tblStandort(StandortID, Etage, Raum) VALUES
(1, "EG", "007"), (2, "1OG", "109"), (3, "UG", "-112");
INSERT INTO tblStoerungsart(StoerungsartID, Art) VALUES
(1, "Papierstau"), (2, "Sorter defekt"), (3, "brennt.");
INSERT INTO tblZubehoer(ZubehoerID) VALUES
("100-67"), ("100-08"), ("200-98");
INSERT INTO tblGeraet(Geraetenr, Einkaufspreis, Wartungsvertrag, letzteWartung, Lieferdatum, Kunde, Standort, Geraetebeschreibung, Bestelldatum) VALUES
(1, 15350, 1, "1983-10-12", "1971-9-17", 5674, 3, "Monster im Keller", "1970-12-30"),
(2, 350, 1, "2020-7-2", "2021-2-1", 5675, 1, "Monster im Keller", "2020-1-7");
INSERT INTO tblZaehler(ZaehlerID, Datum, Zaehlerstand, Geraet) VALUES
(1, "2021-02-3", 932432, 1);
INSERT INTO tblGeraeteKosten(Geraet, Kostenart, Datum, Betrag) VALUES
(1, 2, "2020-01-01", 25000), (1, 3, "1990-12-30", 100);
INSERT INTO tblGeraeteStoerung(Geraet, Stoerungsart, Datum, Bemerkung, StoerungBehoben) VALUES
(1, 3, "2000-1-1", "Wieso???", 0), (1, 3, "2001-1-1", "Brennt immernoch...", 0), (1, 3, "2010-1-1", "Unter Boiler verschoben -> Feature", 1);
INSERT INTO tblGeraeteZubehoer(GeraetZubehoerID, Zubehoer, Geraet) VALUES
(1, "100-67", 1), (2, "100-08", 1), (3, "200-98", 2);
UPDATE tblGeraet SET Einkaufspreis=250 WHERE Geraetenr=1;
UPDATE tblZaehler SET Zaehlerstand=0;
SELECT * FROM tblGeraet;
DELETE FROM tblGeraeteZubehoer WHERE Geraet=2;
DELETE FROM tblGeraet WHERE Geraetenr=2;
SELECT * FROM tblGeraet;

137
11fi5/AWP/IT_Concept.sql Normal file
View File

@ -0,0 +1,137 @@
drop database if exists IT_Concept;
create database if not exists IT_Concept;
use IT_Concept;
create table tblKunde(
Kundennr int primary key
-- mehr Attribute sind in der Aufgabe nicht genannt
)engine=innodb;
create table tblStandort(
StandortID int primary key,
Etage varchar(10),
Raum varchar(10)
)engine=innodb;
create table tblGeraet(
Geraetenr int(5) primary key,
Einkaufspreis double(6,2),
-- Wartungsvertrag und letzte Watung müssen nicht ausgelagert werden,
-- da auf Dauer nur 1 Datum und 1 boolscher Wert erfasst wird.
-- diese Werte sind direkt vom PK des Geräts abhängig.
Wartungsvertrag bool, -- boolscher Wert heißt true oder false
letzteWartung date,
Lieferdatum date,
-- Lieferdatum könnte auch in eigener Tabelle stehen,
-- wenn man davon ausgeht, dass mehr Details zur Lieferung erfasst werden
-- da im Formular nur das Datum steht, kann es auch bei Geraet erfasst werden
Kunde int,
Standort int,
foreign key(Standort) references tblStandort(StandortID),
foreign key(Kunde) references tblKunde(Kundennr)
)engine=innodb;
-- Beziehung Geraet - Zaehler braucht keine Zwischentabellen, da
-- ein Zaehler einem Gerät zugeordnet ist
-- ein Gerät genau einen Zähler hat
-- eigene Zählertabelle ist erforderlich, da merhere DS mit Zählerständen
-- zu erfassen sind.
-- ob der FK in tbl Geraet oder tblTaehler erfasst wird ist egal
create table tblZaehler(
ZaehlerID int auto_increment primary key,
Datum date,
Zaehlerstand int,
Geraet int(5),
foreign key(Geraet) references tblGeraet(Geraetenr)
)engine=innodb;
-- bei der Beziehung Zubehör kann man der Übersicht entnehmen, dass
-- ein Gerät mehrere Zubehörteile hat (mehrere Zubehör-IDs im Formular)
-- außerdem interpretiere ich mit logischem Menschenverstand, dass
-- ein Zubehörteil vermutlich auch in merheren Geräten verwendet werden kann
-- deshalb n:m, das mit Zwischentabelle aufgelöst werden muss
-- da keine Anzahl im Formualr angegeben wird, gehe ich davon aus, dass
-- jedes Zubehörteil genau einmal in einem Gerät verbaut wird
create table tblZubehoer(
ZubehoerID varchar(20) primary key
)engine=innodb;
create table tblGeraeteZubehoer(
GeraetZubehoerID int auto_increment primary key,
Zubehoer varchar(20),
Geraet int(5),
foreign key(Zubehoer) references tblZubehoer(ZubehoerId),
foreign key(Geraet) references tblGeraet(Geraetenr)
)engine=InnoDB;
-- ein Gerät verursacht verschiedene Kostenarten (Papier, Miete,...)
-- eine Kostenart fällt für verschiedene Geräte an
-- deshalb n:m-Beziehung, Zwischentabelle
create table tblKostenart(
KostenartID int auto_increment primary key,
Kostenart varchar(50)
)engine=innodb;
-- eine Kostenart kommt mehrfach in einem Gerät vor, deshalb reichen
-- GeraeteID und KostenartID nicht als zusammengesetzter PK aus,
-- da sonst Papier, Miete o-ä. nur einmalig als Kostenfaktor angesetzt werden könnte
-- Lösung: eigener PK oder Datum zum PK hinzunehen.
create table tblGeraeteKosten(
Geraet int(5),
Kostenart int,
Datum date,
Betrag double(7,2),
Bemerkung varchar(50),
primary key (Geraet, Kostenart, Datum),
foreign key(geraet) references tblGeraet(Geraetenr),
foreign key(Kostenart) references tblKostenart(KostenartID)
)engine=innodb;
-- ein Gerät kann mehrere Störungen haben,
-- eine Störung kann bei mehreren Geräten vorkommen
-- deshalb n:m-Beziehung und Auflpösung mit Zwischentabelle
create table tblStoerungsart(
StoerungsartID int auto_increment primary key,
Art varchar(50)
)engine=innodb;
-- eine Kostenart kommt mehrfach in einem Gerät vor, deshalb reichen
-- GeraetID und StoerungsartID nicht als zusamengesetzter PK
-- Lösung: eigener PK oder Datum als drittes Element in PK dazu
create table tblGeraeteStoerung(
Geraet int(5),
Stoerungsart int,
Datum date,
primary key(Geraet, Stoerungsart, Datum),
foreign key(Geraet) references tblGeraet(Geraetenr),
foreign key(Stoerungsart) references tblStoerungsart(StoerungsartID)
)engine=INNODB;
-- Alter Statements
-- Fügen Sie in Tabelle „Gerät“ ein weiteres Attribut „Gerätebeschreibung“ mit 100 Zeichen hinzu.
Alter table tblGeraet
add Geraetebeschreibung varchar(100);
-- 2.Ergänzen Sie an geeigneter Stelle ein Attribut „Bemerkung“, bei dem Sie Eintragungen bezüglich der konkreten Störung vornehmen können.
Alter table tblGeraeteStoerung
add Bemerkung varchar(100);
-- 3.Ändern Sie den Datentyp beim Attribut „Zählerstand“ von int auf double. (oder ggf. anders herum)
Alter table tblZaehler
modify Zaehlerstand double(13,0);
-- 4.Ergänzen Sie beim Gerät ein Attribut Bestelldatum.
Alter table tblGeraet
add Bestelldatum date;
-- 5.Ergänzen Sie an geeigneter Stelle ein Attribut „Störung behoben“, das nur die Werte true oder false halten kann.
Alter table tblGeraeteStoerung
add StoerungBehoben bool;
-- wenn Attributname aus 2 Wörtern besteht muss er in SQL mit Unterstrich oder zusammen geschrieben werden
-- ansonsten erkennt MySql die Begriffe zwei Eigenschaften und wirft einen Fehler
-- 6.Löschen Sie die Spalte Bemerkung bei Tabelle Kosten.
Alter table tblGeraeteKosten
drop Bemerkung;

View File

@ -0,0 +1,40 @@
USE awp_11fi5_p2_kosidas;
DROP TABLE IF EXISTS Kunde;
CREATE TABLE Kunde(
KundeID INT(11) AUTO_INCREMENT,
Nachname VARCHAR(45),
Vorname VARCHAR(45),
Straße_NR VARCHAR(45),
PLZID INT(11),
IBAN VARCHAR(34),
BIC VARCHAR(11),
PRIMARY KEY(KundeID)
);
ALTER TABLE Kunde
CHANGE Straße_NR Strasse VARCHAR(45),
ADD Nummer VARCHAR(3) AFTER Strasse;
DROP TABLE IF EXISTS Bank;
CREATE TABLE Bank(
BIC VARCHAR(11) NOT NULL,
NAME VARCHAR(45),
PLZID INT,
PRIMARY KEY(BIC)
);
DROP TABLE IF EXISTS Ort;
CREATE TABLE Ort(
PLZID INT AUTO_INCREMENT,
PLZ VARCHAR(5),
Stadt VARCHAR(45),
PRIMARY KEY(PLZID)
);
ALTER TABLE Bank
ADD FOREIGN KEY (PLZID) REFERENCES Ort(PLZID);
ALTER TABLE Kunde
ADD FOREIGN KEY (PLZID) REFERENCES Ort(PLZID),
ADD FOREIGN KEY (BIC) REFERENCES Bank(BIC);

View File

@ -0,0 +1,28 @@
USE awp_11fi5_p2_kosidas;
INSERT INTO Ort (PLZID, PLZ, Stadt) VALUES
(1, '90402', 'Nürnberg'),
(2, '80271', 'München'),
(3, '97070', 'Würzburg'),
(4, '97816', 'Lohr am Main');
INSERT INTO Farbe (Farbcode, Bezeichnung) VALUES
('#FFFFFF', 'weiß'),
('#000000', 'schwarz'),
('#C0C0C0', 'grün'),
('#FFFF00', 'gelb');
INSERT INTO Kategorie (KategorieID, Bezeichnung) VALUES
(1, 'Schuhe'),
(2, 'Kleidung'),
(3, 'Accessoires');
INSERT INTO Bank (BIC, NAME, PLZID) VALUES
('GENODEF1GEM', 'Raiffeisenbank \nMain-Spessart', 4),
('BYLADEM1SWU', 'Sparkasse \nMainfranken \nWürzburg', 3),
('DEUTDEMMXXX', 'Deutsche Bank \nMünchen', 2);
INSERT INTO Artikel (ArtikelID, Bezeichnung, KategorieID, Farbcode, Preis) VALUES
(134456, 'Sportschuh \nRiver', 1, '#000000', 59.95),
(134457, 'Sportschuh \nRiver', 1, '#C0C0C0', 79.95),
(134455, 'Poloshirt \nLondon', 2, '#FFFFFF', 19.95);

View File

@ -0,0 +1,6 @@
USE kosidasdb;
SELECT Artikel.ArtikelID, Artikel.Bezeichnung, Farbe.Bezeichnung as Farbe, IF(ISNULL(Posten.Anzahl) = 0, SUM(Posten.Anzahl), 0) AS Bestellungen FROM Artikel
JOIN Farbe ON Farbe.Farbcodes = Artikel.Farbe
LEFT JOIN Posten ON Artikel.ArtikelID = Posten.ArtikelID
GROUP BY Artikel.ArtikelID;

View File

@ -0,0 +1,65 @@
DROP DATABASE if EXISTS awp_11fi5_p2_kosidas;
CREATE DATABASE if NOT exists awp_11fi5_p2_kosidas;
USE awp_11fi5_p2_kosidas;
CREATE TABLE Kategorie(
KategorieID INT(12) auto_increment,
Bezeichnung VARCHAR(64),
PRIMARY KEY(KategorieID)
)ENGINE=INNODB;
CREATE TABLE Farbe(
Farbcode VARCHAR(7),
Bezeichnung VARCHAR(64),
PRIMARY KEY(Farbcode)
)ENGINE=INNODB;
CREATE TABLE Artikel(
ArtikelID INT(12) auto_increment,
Bezeichnung VARCHAR(64),
Preis DECIMAL(12,2),
KategorieID INT(12),
Farbcode VARCHAR(7),
PRIMARY KEY(ArtikelID),
FOREIGN KEY(KategorieID) REFERENCES Kategorie(KategorieID),
FOREIGN KEY(Farbcode) REFERENCES Farbe(Farbcode)
)ENGINE=INNODB;
CREATE TABLE Kunde(
KundeID INT(11) AUTO_INCREMENT,
Nachname VARCHAR(45),
Vorname VARCHAR(45),
Straße_NR VARCHAR(45),
PLZID INT(11),
IBAN VARCHAR(34),
BIC VARCHAR(11),
PRIMARY KEY(KundeID)
);
ALTER TABLE Kunde
CHANGE Straße_NR Strasse VARCHAR(45),
ADD Nummer VARCHAR(3) AFTER Strasse;
CREATE TABLE Bank(
BIC VARCHAR(11) NOT NULL,
NAME VARCHAR(45),
PLZID INT,
PRIMARY KEY(BIC)
);
CREATE TABLE Ort(
PLZID INT AUTO_INCREMENT,
PLZ VARCHAR(5),
Stadt VARCHAR(45),
PRIMARY KEY(PLZID)
);
ALTER TABLE Bank
ADD FOREIGN KEY (PLZID) REFERENCES Ort(PLZID);
ALTER TABLE Kunde
ADD FOREIGN KEY (PLZID) REFERENCES Ort(PLZID),
ADD FOREIGN KEY (BIC) REFERENCES Bank(BIC);

View File

@ -0,0 +1,192 @@
DROP DATABASE IF EXISTS Kosidasdb;
CREATE DATABASE Kosidasdb;
USE Kosidasdb;
--
-- Table structure for table `ort`
--
DROP TABLE IF EXISTS `ort`;
CREATE TABLE `ort` (
`plzid` int(11) NOT NULL AUTO_INCREMENT,
`plz` varchar(5) DEFAULT NULL,
`stadt` varchar(45) DEFAULT NULL,
PRIMARY KEY (`plzid`)
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8;
INSERT INTO `ort` VALUES (1,'90402','Nuernberg'),(2,'80271','Muenchen'),(3,'97070','Wuerzburg'),(4,'97816','Lohr am Main'),(5,'30139','Hannover'),(6,'97084','Wuerzburg'),(7,'97262','Hausen b. Wuerzburg'),(8,'97074','Wuerzburg'),(9,'97273','Kuernach'),(10,'97228','Rottendorf'),(11,'97072','Wuerzburg'),(12,'97279','Prosselsheim'),(13,'97070','Wuerzburg'),(14,'97076','Wuerzburg');
--
-- Table structure for table `kategorie`
--
DROP TABLE IF EXISTS `kategorie`;
CREATE TABLE `kategorie` (
`kategorieid` int(11) NOT NULL AUTO_INCREMENT,
`bezeichnung` varchar(45) DEFAULT NULL,
PRIMARY KEY (`kategorieid`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
INSERT INTO `kategorie` VALUES (1,'Schuhe'),(2,'Kleidung'),(3,'Accessoires');
--
-- Table structure for table `farbe`
--
DROP TABLE IF EXISTS `farbe`;
CREATE TABLE `farbe` (
`farbcodes` varchar(10) NOT NULL,
`bezeichnung` varchar(45) DEFAULT NULL,
PRIMARY KEY (`farbcodes`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `farbe` VALUES ('#000000','schwarz'),('#0000FF','blau '),('#00FF00','grue?n'),('#c0c0c0','grau'),('#FF0000','rot'),('#FFA500','orange'),('#FFc0cb','pink'),('#FFFF00','gelb'),('#FFFFFF','weiss');
--
-- Table structure for table `bank`
--
DROP TABLE IF EXISTS `bank`;
CREATE TABLE `bank` (
`bic` varchar(11) NOT NULL,
`name` varchar(45) DEFAULT NULL,
`plzid` int(11) NOT NULL,
PRIMARY KEY (`bic`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `bank` VALUES ('BYLADEM1SWU','Sparkasse Mainfranken Wuerzburg',3),('COBADEFFXXX','Commerzbank Nuernberg',1),('DEUTDEMMXXX','Deutsche bank Muenchen',2),('GENODEF1GEM','Raiffeisenbank Main-Spessart',4),('PBNKDEFFXXX','Postbank Hannover',5), ('GENODEF1P17','PSD Nürnberg',1);
--
-- Table structure for table `artikel`
--
DROP TABLE IF EXISTS `artikel`;
CREATE TABLE `artikel` (
`artikelid` int(11) NOT NULL AUTO_INCREMENT,
`bezeichnung` varchar(45) DEFAULT NULL,
`kategorie` int(11) NOT NULL,
`farbe` varchar(10) NOT NULL,
`preis` float(10,2) DEFAULT NULL,
PRIMARY KEY (`artikelid`)
) ENGINE=InnoDB AUTO_INCREMENT=134492 DEFAULT CHARSET=utf8;
INSERT INTO `artikel` VALUES (134456,'Sportschuh River',1,'#000000',59.95),(134457,'Sportschuh River',1,'#0000FF',59.95),(134458,'Sportschuh River',1,'#FF0000',59.95),(134459,'Sportschuh light',1,'#000000',79.99),(134460,'Sportschuh light',1,'#0000FF',79.99),(134461,'Sportschuh light',1,'#FF0000',79.99),(134462,'Sportschuh natural',1,'#000000',69.95),(134463,'Sportschuh natural',1,'#0000FF',69.95),(134464,'Sportschuh natural',1,'#FF0000',69.95),(134465,'UEFA EURO 2016 Deutschland',2,'#FFFFFF',79.95),(134466,'Poloshirt London',2,'#FFFFFF',19.95),(134467,'Poloshirt London',2,'#00FF00',19.95),(134468,'Poloshirt London',2,'#FF0000',19.95),(134469,'Poloshirt London',2,'#c0c0c0',19.95),(134470,'Poloshirt London',2,'#FFFF00',19.95),(134471,'Longsleeve O.L',2,'#FFFFFF',25.90),(134472,'Longsleeve O.L',2,'#00FF00',25.90),(134473,'Longsleeve O.L',2,'#FF0000',25.90),(134474,'Longsleeve O.L',2,'#c0c0c0',25.90),(134475,'Longsleeve O.L',2,'#FFFF00',25.90),(134476,'Longsleeve O.L',2,'#FFA500',25.90),(134477,'Tanktop O.L',2,'#FFFFFF',19.95),(134478,'Tanktop O.L',2,'#00FF00',19.95),(134479,'Tanktop O.L',2,'#FF0000',19.95),(134480,'Tanktop O.L',2,'#c0c0c0',19.95),(134481,'Tanktop O.L',2,'#FFFF00',19.95),(134482,'UEFA EURO 2016 Ball',3,'#FFFFFF',24.95),(134483,'FIFA WM 2014 Ball',3,'#FFFFFF',19.95),(134484,'KOSidas Team-Tasche',3,'#000000',59.90),(134485,'KOSidas Team-Tasche',3,'#c0c0c0',59.90),(134486,'KOSidas Team-Tasche',3,'#0000FF',59.90),(134487,'Trainingshose CHECK',2,'#000000',29.90),(134488,'Trainingshose CHECK',2,'#0000FF',29.90),(134489,'Trainingshose CHECK',2,'#c0c0c0',29.90),(134490,'Trainingshose CHECK',2,'#FFc0cb',29.90),(134491,'Trainingshose CHECK',2,'#FFFF00',29.90);
--
-- Table structure for table `kunde`
--
DROP TABLE IF EXISTS `kunde`;
CREATE TABLE `kunde` (
`kundeid` int(11) NOT NULL AUTO_INCREMENT,
`nachname` varchar(45) DEFAULT NULL,
`vorname` varchar(45) DEFAULT NULL,
`strasse` varchar(45) DEFAULT NULL,
`nummer` varchar(3) DEFAULT NULL,
`plzid` int(11) NOT NULL,
`iban` varchar(34) DEFAULT NULL,
`bic` varchar(11) DEFAULT NULL,
PRIMARY KEY (`kundeid`)
) ENGINE=InnoDB AUTO_INCREMENT=1127 DEFAULT CHARSET=utf8;
INSERT INTO `kunde` VALUES (1111,'Albrecht','Hans','Hauptstrasse', '34',3,'DE10469451550427046185','BYLADEM1SWU'),(1112,'Baertler','Eberhard','Schulstrasse', '12',1,'DE51079383193895505600','COBADEFFXXX'),(1113,'Becker','Claudia','Gartenstrasse','3',1,'DE87280552538644833256','COBADEFFXXX'),(1114,'Hoffmann','Matthias','Bahnhofstrasse','44',4,'DE11313795553717407131','GENODEF1GEM'),(1115,'Kleineschaar','Peter','Bergstrasse','133',5,'DE90309027474883622234','PBNKDEFFXXX'),(1116,'Koenig','Johanna','Birkenweg','2',2,'DE32275197427003047056','DEUTDEMMXXX'),(1117,'Mueller','Michael','Lindenstrasse','78',3,'DE81387768871052634813','BYLADEM1SWU'),(1118,'Neumann','Laura','Kirchstrasse','1',1,'DE41686535144085322226','COBADEFFXXX'),(1119,'Pfennig','Sabine','Waldstrasse','99',5,'DE15122666281748667001','PBNKDEFFXXX'),(1120,'Schaefer','Andreas','Ringstrasse','2',4,'DE41263293419445891556','GENODEF1GEM'),(1121,'Schmidt','Stefan','Schillerstrasse','10a',2,'DE39045846737026319413','DEUTDEMMXXX'),(1122,'Schneider','Lennard','Amselweg','9',2,'DE75809870422109655695','DEUTDEMMXXX'),(1123,'Schulz','Oliver','Jahnstrasse','7',3,'DE18575040339719722166','BYLADEM1SWU'),(1124,'Schwarz','Ulrich','Buchenweg','59',2,'DE98178293021402181160','DEUTDEMMXXX'),(1125,'Wagner','Richi','Wiesenstrasse','71',4,'DE71968839911149658452','GENODEF1GEM'),(1126,'Westermann','Arndt','Am Sportplatz','26',1,'DE75809870422109655695','COBADEFFXXX');
--
-- Table structure for table `mitarbeiter`
--
DROP TABLE IF EXISTS `mitarbeiter`;
CREATE TABLE `mitarbeiter` (
`mitarbeiterid` int(11) NOT NULL,
`nachname` varchar(45) DEFAULT NULL,
`vorname` varchar(45) DEFAULT NULL,
`strasse` varchar(45) DEFAULT NULL,
`nummer` varchar(3) DEFAULT NULL,
`plzid` int(11) NOT NULL,
`geschlecht` char(1) DEFAULT NULL,
`gehalt` float(10,2) DEFAULT NULL,
PRIMARY KEY (`mitarbeiterid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `mitarbeiter` VALUES (1002,'Janicks','Inke','Ringweg','11',13,'w',7000.00),(1005,'Zirpe','Michael','Hammelburgerstrasse', '34',6,'m',7000.00),(1006,'Lemme','Markus','Im Trepp','19',7,'m',5300.00),(1007,'Trost','Christiane','Bergstrasse', '46',8,'w',4800.00),(1008,'Schroeter','Roland','Hauptstrasse', '10',9,'m',4500.00),(1009,'Reichelt','Silke','Langestrasse', '54',10,'w',3900.00),(1010,'Pfau','Erich','Hallesche strasse', '16',11,'m',2800.00),(1011,'Taro','Ulrich','Nicolaiplatz', '2',8,'m',2900.00),(1012,'Marx','Christine','Suellerstrasse', '21',12,'w',2100.00),(1013,'Wicki','Joerg','Weidenstrasse', '51',13,'m',2455.00),(1014,'Ecke','Silvia','Brandstrasse', '3b',6,'w',2700.00),(1015,'Mieder','Christa','Dorfweg', '22',12,'w',2600.00),(1016,'Jach','Bernd','Nordstrasse' ,'11',10,'m',1200.00),(1017,'Schockler','Peter','Gerberweg', '1',6,'m',3000.00),(1018,'Renner','Manfred','Launsingerstrasse', '45',14,'m',2555.00);
--
-- Table structure for table `bestand`
--
DROP TABLE IF EXISTS `bestand`;
CREATE TABLE `bestand` (
`bestandID` int(11) NOT NULL AUTO_INCREMENT,
`artikelid` int(11) NOT NULL,
`groesse` varchar(3) DEFAULT NULL,
`anzahl` int(11) DEFAULT NULL,
PRIMARY KEY (`bestandID`)
) ENGINE=InnoDB AUTO_INCREMENT=197 DEFAULT CHARSET=utf8;
INSERT INTO `bestand` VALUES (1,134456,'38',123),(2,134456,'39',125),(3,134456,'40',22),(4,134456,'41',135),(5,134456,'42',67),(6,134456,'43',22),(7,134456,'44',68),(8,134456,'45',142),(9,134456,'46',86),(10,134457,'38',37),(11,134457,'39',133),(12,134457,'40',84),(13,134457,'41',39),(14,134457,'42',62),(15,134457,'43',25),(16,134457,'44',98),(17,134457,'45',63),(18,134457,'46',103),(19,134458,'38',109),(20,134458,'39',138),(21,134458,'40',88),(22,134458,'41',92),(23,134458,'42',53),(24,134458,'43',103),(25,134458,'44',36),(26,134458,'45',57),(27,134458,'46',75),(28,134459,'38',32),(29,134459,'39',40),(30,134459,'40',54),(31,134459,'41',94),(32,134459,'42',46),(33,134459,'43',81),(34,134459,'44',128),(35,134459,'45',75),(36,134459,'46',44),(37,134460,'38',135),(38,134460,'39',101),(39,134460,'40',126),(40,134460,'41',34),(41,134460,'42',18),(42,134460,'43',62),(43,134460,'44',141),(44,134460,'45',75),(45,134460,'46',90),(46,134461,'38',72),(47,134461,'39',84),(48,134461,'40',89),(49,134461,'41',76),(50,134461,'42',31),(51,134461,'43',74),(52,134461,'44',117),(53,134461,'45',144),(54,134461,'46',149),(55,134462,'38',79),(56,134462,'39',34),(57,134462,'40',149),(58,134462,'41',71),(59,134462,'42',108),(60,134462,'43',97),(61,134462,'44',38),(62,134462,'45',31),(63,134462,'46',141),(64,134463,'38',76),(65,134463,'39',39),(66,134463,'40',99),(67,134463,'41',148),(68,134463,'42',73),(69,134463,'43',59),(70,134463,'44',145),(71,134463,'45',66),(72,134463,'46',69),(73,134464,'38',81),(74,134464,'39',102),(75,134464,'40',45),(76,134464,'41',32),(77,134464,'42',120),(78,134464,'43',102),(79,134464,'44',80),(80,134464,'45',13),(81,134464,'46',18),(82,134465,'S',40),(83,134465,'M',51),(84,134465,'L',56),(85,134465,'XL',126),(86,134465,'XXL',75),(87,134466,'S',118),(88,134466,'M',113),(89,134466,'L',62),(90,134466,'XL',96),(91,134466,'XXL',60),(92,134467,'S',100),(93,134467,'M',113),(94,134467,'L',35),(95,134467,'XL',147),(96,134467,'XXL',56),(97,134468,'S',83),(98,134468,'M',92),(99,134468,'L',8),(100,134468,'XL',93),(101,134468,'XXL',67),(102,134469,'S',92),(103,134469,'M',88),(104,134469,'L',29),(105,134469,'XL',79),(106,134469,'XXL',73),(107,134470,'S',11),(108,134470,'M',72),(109,134470,'L',140),(110,134470,'XL',2),(111,134470,'XXL',34),(112,134471,'S',11),(113,134471,'M',90),(114,134471,'L',41),(115,134471,'XL',117),(116,134471,'XXL',90),(117,134472,'S',148),(118,134472,'M',118),(119,134472,'L',132),(120,134472,'XL',91),(121,134472,'XXL',125),(122,134473,'S',79),(123,134473,'M',144),(124,134473,'L',114),(125,134473,'XL',58),(126,134473,'XXL',91),(127,134474,'S',15),(128,134474,'M',100),(129,134474,'L',7),(130,134474,'XL',37),(131,134474,'XXL',109),(132,134475,'S',50),(133,134475,'M',16),(134,134475,'L',56),(135,134475,'XL',60),(136,134475,'XXL',148),(137,134476,'S',87),(138,134476,'M',86),(139,134476,'L',66),(140,134476,'XL',1),(141,134476,'XXL',8),(142,134477,'S',36),(143,134477,'M',129),(144,134477,'L',148),(145,134477,'XL',49),(146,134477,'XXL',118),(147,134478,'S',103),(148,134478,'M',73),(149,134478,'L',126),(150,134478,'XL',49),(151,134478,'XXL',64),(152,134479,'S',56),(153,134479,'M',77),(154,134479,'L',85),(155,134479,'XL',107),(156,134479,'XXL',97),(157,134480,'S',149),(158,134480,'M',28),(159,134480,'L',39),(160,134480,'XL',109),(161,134480,'XXL',123),(162,134481,'S',111),(163,134481,'M',146),(164,134481,'L',134),(165,134481,'XL',46),(166,134481,'XXL',84),(167,134482,'UNI',85),(168,134483,'UNI',9),(169,134484,'UNI',126),(170,134485,'UNI',55),(171,134486,'UNI',133),(172,134487,'S',78),(173,134487,'M',78),(174,134487,'L',74),(175,134487,'XL',139),(176,134487,'XXL',43),(177,134488,'S',127),(178,134488,'M',70),(179,134488,'L',119),(180,134488,'XL',107),(181,134488,'XXL',113),(182,134489,'S',21),(183,134489,'M',129),(184,134489,'L',146),(185,134489,'XL',102),(186,134489,'XXL',94),(187,134490,'S',31),(188,134490,'M',51),(189,134490,'L',130),(190,134490,'XL',83),(191,134490,'XXL',126),(192,134491,'S',3),(193,134491,'M',47),(194,134491,'L',133),(195,134491,'XL',22),(196,134491,'XXL',26);
--
-- Table structure for table `bestellung`
--
DROP TABLE IF EXISTS `bestellung`;
CREATE TABLE `bestellung` (
`bestellid` int(11) NOT NULL AUTO_INCREMENT,
`bestelldatum` date NOT NULL,
`kundeid` int(11) NOT NULL,
PRIMARY KEY (`bestellid`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;
INSERT INTO `bestellung` VALUES (1,'2016-05-16',1119),(2,'2016-05-20',1117),(3,'2016-05-23',1122),(4,'2016-05-25',1111),(5,'2016-05-29',1126),(6,'2016-06-01',1115),(7,'2016-06-06',1124),(8,'2016-06-11',1125),(9,'2016-06-18',1113),(10,'2016-06-30',1117);
--
-- Table structure for table `posten`
--
DROP TABLE IF EXISTS `posten`;
CREATE TABLE `posten` (
`bestellid` int(11) NOT NULL,
`artikelid` int(11) NOT NULL,
`anzahl` int(11) DEFAULT NULL,
`groesse` varchar(3) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
INSERT INTO `posten` VALUES (1,134458,1,'40'),(1,134465,1,'M'),(2,134467,1,'M'),(3,134475,2,'L'),(3,134485,1,'UNI'),(3,134491,2,'L'),(4,134481,2,'M'),(4,134483,3,'UNI'),(5,134463,1,'41'),(6,134468,1,'XL'),(7,134458,1,'38'),(7,134465,1,'L'),(7,134468,2,'S'),(8,134487,2,'S'),(9,134479,1,'M'),(9,134490,2,'XXL'),(10,134460,1,'42');
-- ADD FOREIGN KEY Table kunde --
ALTER TABLE kunde
ADD FOREIGN KEY (plzid) REFERENCES ort(plzid),
ADD FOREIGN KEY (bic) REFERENCES bank(bic);
-- ADD FOREIGN KEY Table bestellung --
ALTER TABLE bestellung
ADD FOREIGN KEY (kundeid) REFERENCES kunde(kundeid);
-- ADD FOREIGN KEY Table posten --
ALTER TABLE posten
ADD FOREIGN KEY (bestellid) REFERENCES bestellung(bestellid),
ADD FOREIGN KEY (artikelid) REFERENCES artikel(artikelid);
-- ADD FOREIGN KEY Table artikel --
ALTER TABLE artikel
ADD FOREIGN KEY (kategorie) REFERENCES kategorie(kategorieid),
ADD FOREIGN KEY (farbe) REFERENCES farbe(farbcodes);
-- ADD FOREIGN KEY Table mitarbeiter --
ALTER TABLE mitarbeiter
ADD FOREIGN KEY (plzid) REFERENCES ort(plzid);
-- ADD FOREIGN KEY Table bestand --
ALTER TABLE bestand
ADD FOREIGN KEY (artikelid) REFERENCES artikel(artikelid);
-- ADD FOREIGN KEY Table bank
ALTER TABLE bank
ADD FOREIGN KEY(plzid) REFERENCES ort(plzid);

View File

@ -0,0 +1,58 @@
#2021-05-20 Übungen Nordwind
USE nordwind;
#1. Wie lange dauert der Versand im Schnitt bei unseren Versandfirmen?
SELECT v.Firma, AVG(DATEDIFF(Lieferdatum, Versanddatum)) FROM bestellungen b, versandfirmen v
WHERE b.`VersandÜber` = v.FirmenNr
GROUP BY b.`VersandÜber`;
#2. Erstellen Sie eine Liste, wie hoch die Frachtkosten unserer Versandfirmen 1996 insgesamt waren.
SELECT v.Firma, SUM(Frachtkosten) FROM bestellungen b, versandfirmen v
WHERE b.`VersandÜber` = v.FirmenNr
AND YEAR(b.Bestelldatum) = 1996
GROUP BY b.`VersandÜber`;
#3. Erstellen Sie eine Liste der Kunden(Kundenname), deren Waren noch nicht versendet wurden.
SELECT DISTINCT k.Firma, k.Kontaktperson FROM bestellungen b, kunden k
WHERE b.KundenCode = k.KundenCode
AND b.Versanddatum IS NULL;
#4. Ermitteln Sie, wie oft unsere Kunden 1998 im Mittel bestellt haben.
#gesamt
SELECT AVG(Bestellzahl) FROM (
SELECT k.Firma, COUNT(b.BestellNr) as Bestellzahl FROM bestellungen b, kunden k
WHERE b.KundenCode = k.KundenCode
AND YEAR(b.Bestelldatum) = 1998
GROUP BY b.KundenCode
) bestellcount;
#pro Kunde
SELECT k.Firma, COUNT(b.BestellNr) as Bestellzahl FROM bestellungen b, kunden k
WHERE b.KundenCode = k.KundenCode
AND YEAR(b.Bestelldatum) = 1998
GROUP BY b.KundenCode
#5. Stellen Sie fest, wie hoch der Bestellwert des Kunden LILA Supermercado 1996 jeweils bei Bestellungen über 1000,00€ war.
#Geben Sie Bestellnummer, Bestellwert und Bestelldatum an.
SELECT b.BestellNr, SUM(d.Einzelpreis * d.Anzahl * (1-d.Rabatt)) as Bestellwert, b.Bestelldatum FROM bestellungen b, kunden k, bestelldetails d
WHERE b.KundenCode = k.KundenCode
AND d.BestellNr = b.BestellNr
AND k.Firma = "LILA-Supermercado"
AND YEAR(Bestelldatum) = 1996
GROUP BY b.BestellNr
HAVING SUM(d.Einzelpreis * d.Anzahl * (1-d.Rabatt)) > 1000;
#6. Stellen Sie fest, wie viele Sendungen in die USA gingen.
SELECT COUNT(*) FROM bestellungen
WHERE Bestimmungsland = "USA";
#7. Ermitteln Sie, wie viele verschiedene Länder wir beliefern.
SELECT COUNT(DISTINCT Bestimmungsland) FROM bestellungen;
#8. Berechnen Sie, wie viel Umsatz wir mit skandinavischen Lieferanten insgesamt machen.
SELECT SUM(d.Einzelpreis * d.Anzahl * (1-d.Rabatt)) as Umsatz FROM bestellungen b, bestelldetails d, artikel a, lieferanten l
WHERE b.BestellNr = d.BestellNr
AND d.ArtikelNr = a.ArtikelNr
AND a.LieferantenNr = l.LieferantenNr
AND l.Land IN ("Dänemark", "Norwegen", "Finnland", "Schweden");

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,74 @@
#2021-05-20 Übungen Nordwind
USE nordwind;
#a. Wie lange dauert der Versand im Schnitt bei unseren Versandfirmen?
SELECT v.Firma, AVG(DATEDIFF(Lieferdatum, Versanddatum)) FROM versandfirmen v
JOIN bestellungen b ON b.`VersandÜber` = v.FirmenNr
GROUP BY b.`VersandÜber`;
#b. Erstellen Sie eine Liste, wie hoch die Frachtkosten unserer Versandfirmen 1996 insgesamt waren.
SELECT v.Firma, SUM(Frachtkosten) FROM versandfirmen v
JOIN bestellungen b ON b.`VersandÜber` = v.FirmenNr
WHERE YEAR(b.Bestelldatum) = 1996
GROUP BY b.`VersandÜber`;
#c. Erstellen Sie eine Liste der Kunden(Kundenname), deren Waren noch nicht versendet wurden.
SELECT DISTINCT k.Firma, k.Kontaktperson FROM kunden k
JOIN bestellungen b ON b.KundenCode = k.KundenCode
WHERE b.Versanddatum IS NULL;
#d. Ermitteln Sie, wie oft unsere Kunden 1998 im Mittel bestellt haben.
#gesamt
SELECT AVG(Bestellzahl) FROM (
SELECT k.Firma, COUNT(b.BestellNr) as Bestellzahl FROM kunden k
JOIN bestellungen b ON b.KundenCode = k.KundenCode
WHERE YEAR(b.Bestelldatum) = 1998
GROUP BY b.KundenCode
) bestellcount;
#pro Kunde
SELECT k.Firma, COUNT(b.BestellNr) as Bestellzahl FROM kunden k
JOIN bestellungen b ON b.KundenCode = k.KundenCode
WHERE YEAR(b.Bestelldatum) = 1998
GROUP BY b.KundenCode;
#e. Stellen Sie fest, wie hoch der Bestellwert des Kunden LILA Supermercado 1996 jeweils bei Bestellungen über 1000,00€ war.
#Geben Sie Bestellnummer, Bestellwert und Bestelldatum an.
SELECT b.BestellNr, SUM(d.Einzelpreis * d.Anzahl * (1-d.Rabatt)) as Bestellwert, b.Bestelldatum FROM kunden k
JOIN bestellungen b ON b.KundenCode = k.KundenCode
JOIN bestelldetails d ON d.BestellNr = b.BestellNr
WHERE k.Firma = "LILA-Supermercado"
AND YEAR(Bestelldatum) = 1996
GROUP BY b.BestellNr
HAVING SUM(d.Einzelpreis * d.Anzahl * (1-d.Rabatt)) > 1000;
#f. Stellen Sie fest, wie viele Sendungen in die USA gingen.
SELECT COUNT(*) FROM bestellungen
WHERE Bestimmungsland = "USA";
#g. Ermitteln Sie, wie viele verschiedene Länder wir beliefern.
SELECT COUNT(DISTINCT Bestimmungsland) FROM bestellungen;
#h. Berechnen Sie, wie viel Umsatz wir mit skandinavischen Lieferanten insgesamt machen.
SELECT SUM(d.Einzelpreis * d.Anzahl * (1-d.Rabatt)) as Umsatz FROM bestellungen b
JOIN bestelldetails d ON b.BestellNr = d.BestellNr
JOIN artikel a ON d.ArtikelNr = a.ArtikelNr
JOIN lieferanten l ON a.LieferantenNr = l.LieferantenNr
WHERE l.Land IN ("Dänemark", "Norwegen", "Finnland", "Schweden");
#i
SELECT kunden.Firma, Kontaktperson, MAX(DATEDIFF(Lieferdatum, Bestelldatum)), versandfirmen.Firma FROM kunden
JOIN bestellungen ON kunden.KundenCode = bestellungen.KundenCode
JOIN versandfirmen ON versandfirmen.FirmenNr = bestellungen.`VersandÜber`
WHERE DATEDIFF(Lieferdatum, Bestelldatum) > 10
AND YEAR(Bestelldatum) = 1996
AND versandfirmen.Firma = "Speedy Express"
GROUP BY kunden.KundenCode;
#j
SELECT kunden.Firma, Kontaktperson, DATEDIFF(Lieferdatum, Bestelldatum) FROM kunden
JOIN bestellungen ON kunden.KundenCode = bestellungen.KundenCode
WHERE DATEDIFF(Lieferdatum, Bestelldatum) = (
SELECT MAX(DATEDIFF(Lieferdatum, Bestelldatum)) FROM kunden
JOIN bestellungen ON kunden.KundenCode = bestellungen.KundenCode
);

File diff suppressed because one or more lines are too long

70
11fi5/AWP/Rechnung.sql Normal file
View File

@ -0,0 +1,70 @@
DROP DATABASE if EXISTS awp_11fi5_rechnung;
CREATE DATABASE if NOT exists awp_11fi5_rechnung;
USE awp_11fi5_rechnung;
CREATE TABLE Kunden(
KNr INT AUTO_INCREMENT,
KName VARCHAR(40),
Vorname VARCHAR(40),
Straße VARCHAR(40),
PLZ VARCHAR(5),
Ort VARCHAR(40),
Telefon VARCHAR(40),
Email VARCHAR(60),
Kartenstatus VARCHAR(40),
PRIMARY KEY(KNr)
);
CREATE TABLE Gutschriften(
GNr INT AUTO_INCREMENT,
KNr INT,
Datum DATE,
Betrag DECIMAL(10,2),
GText VARCHAR(120),
PRIMARY KEY(GNr),
FOREIGN KEY(KNr) REFERENCES Kunden(KNr)
);
CREATE TABLE Rechnungen(
RNr INT AUTO_INCREMENT,
KNr INT,
AuftragsNr INT,
Datum DATE,
Betrag DECIMAL(10,2),
Mahnstatus VARCHAR(20),
Mahngebür DECIMAL(10,2),
PRIMARY KEY(RNr),
FOREIGN KEY(KNr) REFERENCES Kunden(KNr)
);
CREATE TABLE Lastschriften(
LNr INT AUTO_INCREMENT,
KNr INT,
RNr INT,
Datum DATE,
Betrag DECIMAL(10,2),
LText VARCHAR(40),
PRIMARY KEY(LNr),
FOREIGN KEY(KNr) REFERENCES Kunden(KNr),
FOREIGN KEY(RNr) REFERENCES Rechnungen(RNr)
);
CREATE TABLE Artikel(
ANr INT AUTO_INCREMENT,
Bezeichnung VARCHAR(60),
Bestand INT,
Verkaufspreis_Vorschlag DECIMAL(10,2),
Datum_Änderung_Verkaufspreis DATE,
PRIMARY KEY(ANr)
);
CREATE TABLE Rechnungspositionen(
RNr INT,
ANr INT,
Menge INT,
Einzelpreis DECIMAL(10,2),
PRIMARY KEY(RNr, ANr),
FOREIGN KEY(RNr) REFERENCES Rechnungen(RNr),
FOREIGN KEY(ANr) REFERENCES Artikel(ANr)
);

View File

@ -0,0 +1 @@
<mxfile host="Electron" modified="2021-07-26T12:06:46.045Z" agent="5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) draw.io/14.6.13 Chrome/89.0.4389.128 Electron/12.0.7 Safari/537.36" etag="VoBmt9-26_Rpmf-mw9aE" version="14.6.13" type="device"><diagram id="R2lEEEUBdFMjLlhIrx00" name="Page-1">7VxbT+M4FP41kXYfBjW3tvPY64IoDAK0c3kzjZt4SeLKcYaWX7/HiU1a3NIykxBGWKogPjlO4vOdiz/HreWOktU/DC2jCxrg2HI6wcpyx5bj9Lt9+CsE61Lgd9xSEDISlCK7EtyQRyyFHSnNSYCzLUVOaczJcls4p2mK53xLhhijD9tqCxpv33WJQqwJbuYo1qVfScAjOSy/U8lPMQkjdWe7I88kSClLQRahgD5sifCKT2nK5SNeYZagFKcczlwgdo+Z5U8izsVIB5Yzhc9CaJ+ElIYxRkuSncxpAuJ5BirTBUpILMy8caGhvBDczp1Y7ohRysujZDXCsYBKwVA+03TP2Sc7MHHdIzr46L43esTka8+P2CT9fkfJj0+2BP8ninNp4PM8DXAqTcTXyu7ZA0liGITlDsWgb+SZDrTnEYmDGVrTXDxIxtH8XrWGEWXkEfRRDKdsEMBpxqVbOd0tjRvRU16T4Qx0rtTo7GeiC7TaUpyhjKunoXGMlhm5K55PdEwQC0k6pJwDOKWSHDVmHK/22tN+QgmCCdMEc7YGFdnhyWnWz9oPlVvanpRFmy7Zd2Q4SD8Ln65dwQcHEsHXoOlpaF6dQ/sSJRj+nV3earDC+HmBCqP3eERjykCe0hJnEsfPRCgmYQrNGC9EN2FAArE5kGJOl+JiSzQnaTgrdMZeJbmWRhAiCn0XcRF/EQmExwGWlCOO7p4ca0mJDEZ/CB+w5ahz4ls+PPgI2nbVho9QZ3xEUxgLIgWGGLziAQvP2PJZ+yj0X4gX3SeUD3SPcwGlV78H+JoHSPD/HVyPTgfXfzne3x/WCRrD3Xfaxr2r4X4DFrBGrvV5auBvGP5ev234exr8pyjP0jxJxFzjQ2f+xlC3O17bsPf1ej/7sRHtdsdEe/24u0dO9JrD/bOG+xfGTZZvGHe/7dmdYhgbuF/jeZTmaWgY22HG5nm/ythUpq8fUVtDtGRspnLXxtlKlN8vZ3MczQfGiOcJiMaD28mHhb8xxFtna46+6jYVUV8uvV2auK/i3mnMC1onbY5O2q5oRjihppYfrOXd7i/WcqfTbwrPHWxMRPXZ2MRzLXW8987ruM7KiqyupujGC2rJ6i97Qeu13dU52iBfgEHC7MMX9sZQb72WuzqPO88ZwexTkf3NelyD4Le/DuvqDG5QrMeZYG8C79bXX12dvxnG3ijkrS+9enqCnxG8wAwURaTfnl0Y3OvHXW2VaS/Ud2ypYZhkOMZJsaHLEPXXEXWvd+yiu0rz9WOqb5IxRL1Gol7GzPsl6q6+WaYg6mr1zfhBPVT9gB+0T9X1BdjCD8zc/W0coH3Wrq/YXuA0FPvlprMvg4+Lf2OQt8/VPZ27TUgKt+ZmC8Xh2dzzTe9Hz+Z6Tb118fbseTdFvJ7JnPfOd7x7+mRexvPGumvfLLvWjnzr0zdvx/tWQc0RM7T8YCL3jknk/TfdC+fp709NJq8zk/dfncl3OUBj8ay+wrmB/xBn8whi+q58fW62N/9WPn8Z/135/G3x15fYCzouy7lJA/WQ8gNusIuUv60beBrCOAixGjkYKKIhTVE8qaRgdrF1MpBGr3RmVMBZ1NH/MOdrWbpRzqko3jxRhR2vCP+2cfxdXAqAKVtjVa+Lxlo1Uhjvt83GRi/RrLoVrapfMBDfhIfm5DpB6bqUTYkw1EaBF8N+ubyDlWjO5viIqgoTlxC/yNz3vIphOEac/Nx+kvpR7/5xqNvvGHW1F/Ew6t1WUe/9cajXHusFpVA6skYVsoY8wz7SM8rtjK15xmfjGTWirn4Z4jDqe0j/26Cu3hUb1Oup/cei7u9ZLPhd1KFZ/cBNcW7jR4ncyf8=</diagram></mxfile>

BIN
11fi5/AWP/Rechnungen_ER.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 96 KiB

View File

@ -0,0 +1,61 @@
USE awp_11fi5_tournee;
#1
ALTER TABLE Tournee
MODIFY Tourneename VARCHAR(50);
#2
ALTER TABLE Besucher_Veranstaltung
RENAME TO Veranstaltungsbesucher;
ALTER TABLE Preiskat_Location
RENAME TO Locationpreise;
ALTER TABLE Preiskat_Veranstaltung
RENAME TO Veranstaltungspreise;
ALTER TABLE Veranstaltung_Künstler
RENAME TO Teilnehmende_Künstler;
#3
ALTER TABLE Location
ADD COLUMN Anzahl_Plätze_gesamt INT;
ALTER TABLE Location
DROP COLUMN Anzahl_Plätze_gesamt;
#4
ALTER TABLE Künstler
ADD COLUMN Besonderheiten VARCHAR(100);
#5
CREATE TABLE Ort(
OrtID INT AUTO_INCREMENT,
PLZ VARCHAR(5),
Ort VARCHAR(45),
PRIMARY KEY(OrtID)
);
#6
ALTER TABLE Künstler
DROP COLUMN PLZ,
DROP COLUMN Ort,
ADD COLUMN OrtID INT,
ADD FOREIGN KEY(OrtID) REFERENCES Ort(OrtID);
ALTER TABLE Location
DROP COLUMN PLZ,
DROP COLUMN Ort,
ADD COLUMN OrtID INT,
ADD FOREIGN KEY(OrtID) REFERENCES Ort(OrtID);

87
11fi5/AWP/Tournee.sql Normal file
View File

@ -0,0 +1,87 @@
DROP DATABASE if EXISTS awp_11fi5_tournee;
CREATE DATABASE if NOT exists awp_11fi5_tournee;
USE awp_11fi5_tournee;
CREATE TABLE Künstler(
Künstler_ID INT AUTO_INCREMENT,
KünstlerName VARCHAR(40),
Straße VARCHAR(40),
Ort VARCHAR(40),
PLZ VARCHAR(10),
PRIMARY KEY(Künstler_ID)
)ENGINE=INNODB;
CREATE TABLE Tournee(
Tournee_ID INT AUTO_INCREMENT,
Tourneename VARCHAR(40),
PRIMARY KEY(Tournee_ID)
)ENGINE=INNODB;
CREATE TABLE Location(
Location_ID INT AUTO_INCREMENT,
LocationName VARCHAR(40),
Straße VARCHAR(40),
Ort VARCHAR(40),
PLZ VARCHAR(10),
PRIMARY KEY(Location_ID)
)ENGINE=INNODB;
CREATE TABLE Preiskategorie(
Kategorie_ID INT AUTO_INCREMENT,
Preisstufe VARCHAR(20),
PRIMARY KEY(Kategorie_ID)
)ENGINE=INNODB;
CREATE TABLE Besucher(
Besucher_ID INT AUTO_INCREMENT,
Email VARCHAR(60),
PRIMARY KEY(Besucher_ID)
)ENGINE=INNODB;
CREATE TABLE Veranstaltung(
Veranstaltung_ID INT AUTO_INCREMENT,
Veranstaltung VARCHAR(60),
Beginn TIME,
Datum DATE,
Location_ID INT,
Tournee_ID INT,
PRIMARY KEY(Veranstaltung_ID),
FOREIGN KEY(Location_ID) REFERENCES Location(Location_ID),
FOREIGN KEY(Tournee_ID) REFERENCES Tournee(Tournee_ID)
)ENGINE=INNODB;
CREATE TABLE Veranstaltung_Künstler(
Künstler_ID INT,
Veranstaltung_ID INT,
GageKünstler DECIMAL(12,2),
PRIMARY KEY(Künstler_ID, Veranstaltung_ID),
FOREIGN KEY(Künstler_ID) REFERENCES Künstler(Künstler_ID),
FOREIGN KEY(Veranstaltung_ID) REFERENCES Veranstaltung(Veranstaltung_ID)
)ENGINE=INNODB;
CREATE TABLE Preiskat_Veranstaltung(
Kategorie_ID INT,
Veranstaltung_ID INT,
PreisEuro DECIMAL(12,2),
PRIMARY KEY(Veranstaltung_ID, Kategorie_ID),
FOREIGN KEY(Kategorie_ID) REFERENCES Preiskategorie(Kategorie_ID),
FOREIGN KEY(Veranstaltung_ID) REFERENCES Veranstaltung(Veranstaltung_ID)
)ENGINE=INNODB;
CREATE TABLE Besucher_Veranstaltung(
Besucher_ID INT,
Veranstaltung_ID INT,
Platz VARCHAR(20),
PRIMARY KEY(Besucher_ID, Veranstaltung_ID),
FOREIGN KEY(Besucher_ID) REFERENCES Besucher(Besucher_ID),
FOREIGN KEY(Veranstaltung_ID) REFERENCES Veranstaltung(Veranstaltung_ID)
)ENGINE=INNODB;
CREATE TABLE Preiskat_Location(
Kategorie_ID INT,
Location_ID INT,
PRIMARY KEY(Kategorie_ID, Location_ID),
FOREIGN KEY(Kategorie_ID) REFERENCES Preiskategorie(Kategorie_ID),
FOREIGN KEY(Location_ID) REFERENCES Location(Location_ID)
)ENGINE=INNODB;

View File

@ -0,0 +1,48 @@
USE verein;
--a
SELECT spieler.name FROM spieler
JOIN strafen ON spieler.spielernr = strafen.spielernr
WHERE spieler.ort = "Düsseldorf";
--b
SELECT teams.liga, spieler.name FROM spieler
JOIN wettkaempfe ON wettkaempfe.spielernr = spieler.spielernr
JOIN teams ON wettkaempfe.teamnr = teams.teamnr;
--c
SELECT spieler.name, teams.teamnr, teams.liga FROM spieler
LEFT JOIN teams ON spieler.spielernr = teams.captain;
--d
SELECT sum(wettkaempfe.gewonnen + wettkaempfe.verloren) FROM teams
JOIN wettkaempfe ON wettkaempfe.teamnr = team.teamnr;
--e
SELECT max(strafen.betrag) FROM spieler
JOIN teams ON spieler.spielernr = teams.captain
JOIN strafen ON spieler.spielernr = strafen.spielernr
WHERE year(strafen.datum) = year(now())
AND date(strafen.datum) >= 6;
--f
SELECT teams.liga, sum(strafen.betrag) FROM teams
JOIN wettkaempfe ON teams.teamnr = wettkaempfe.teamnr
JOIN spieler ON wettkaempfe.spielernr = spieler.spielernr
JOIN strafen ON spieler.spielernr = strafen.spielernr
GROUP BY teams.liga;
--g
SELECT spieler.name FROM spieler
JOIN strafen ON spieler.spielernr = strafen.spielernr
WHERE strafen.betrag >= 50 --g.2
GROUP BY spieler.spielernr
HAVING count(strafen.zahlungsnr) >= 2;
--h
SELECT spieler.name FROM spieler
LEFT JOIN strafen ON strafen.spielernr = spieler.spielernr
JOIN wettkaempfe ON spieler.spielernr = wettkaempfe.spielernr
WHERE wettkaempfe.gewonnen > wettkaempfe.verloren
GROUP BY spieler.spielernr
HAVING COUNT(strafen.zahlungsnr) = 0;

View File

@ -0,0 +1,186 @@
-- phpMyAdmin SQL Dump
-- version 2.6.0-pl1
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Erstellungszeit: 28. November 2004 um 16:48
-- Server Version: 4.0.21
-- PHP-Version: 5.0.2
--
-- Datenbank: `verein`
--
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `spieler`
--
Drop database if exists verein;
CREATE DATABASE if not exists verein;
use verein;
DROP TABLE IF EXISTS `spieler`;
CREATE TABLE IF NOT EXISTS `spieler` (
`SPIELERNR` int(11) NOT NULL default '0',
`NAME` varchar(40) NOT NULL default '',
`VORNAME` varchar(40) default NULL,
`TITEL` varchar(8) default NULL,
`GEBOREN` datetime default NULL,
`GESCHLECHT` char(1) default NULL,
`BEITRITT` datetime default NULL,
`STRASSE` varchar(40) default NULL,
`HAUSNR` varchar(5) default NULL,
`PLZ` varchar(6) default NULL,
`ORT` varchar(40) default NULL,
`TELEFON` varchar(50) default NULL,
PRIMARY KEY (`SPIELERNR`)
) Engine=InnoDB;
--
-- Daten für Tabelle `spieler`
--
INSERT INTO `spieler` (`SPIELERNR`, `NAME`, `VORNAME`, `TITEL`, `GEBOREN`, `GESCHLECHT`, `BEITRITT`, `STRASSE`, `HAUSNR`, `PLZ`, `ORT`, `TELEFON`) VALUES (2, 'Elfers', 'Rainer', NULL, '1981-12-09 00:00:00', 'M', '1969-05-01 00:00:00', 'Stadtring', '43', '40348', 'Düsseldorf', '0211-237893'),
(6, 'Peters', 'Robert', NULL, '1981-05-04 00:00:00', 'M', '1992-05-03 00:00:00', 'Hafenallee', '80', '40234', 'Düsseldorf', '0211-476537'),
(7, 'Wiegand', 'Günther', NULL, '1971-08-26 00:00:00', 'M', '1975-12-05 00:00:00', 'Erasmusweg', '39', '40648', 'Düsseldorf', '0211-347689'),
(8, 'Neuhaus', 'Berta', NULL, '1979-09-05 00:00:00', 'W', '1996-06-01 00:00:00', 'Sporenallee', '4', '40304', 'Ratingen', '02102-45845'),
(27, 'Kohl', 'Dagmar', NULL, '1962-11-14 00:00:00', 'W', '1980-08-01 00:00:00', 'Luisenpfad', '84', '40051', 'Meerbusch', '02105-23485'),
(28, 'Kohl', 'Claudia', NULL, '1958-05-01 00:00:00', 'W', '1979-03-01 00:00:00', 'Domplatz', '10', '40402', 'Neuss', '02101-65959'),
(39, 'Bischof', 'Dennis', NULL, '1959-01-09 00:00:00', 'M', '1975-11-01 00:00:00', 'Erikaplatz', '78', '40876', 'Düsseldorf', '0211-393435'),
(44, 'Bäcker', 'Egon', 'Dr.', '1980-04-03 00:00:00', 'M', '1989-04-01 00:00:00', 'Lichtenstraße', '23', '40323', 'Ratingen', '02102-36875'),
(57, 'Böhmen', 'Manfred', 'von', '1984-12-19 00:00:00', 'M', '1993-09-01 00:00:00', 'Erasmusweg', '16', '40989', 'Düsseldorf', '0211-473458'),
(83, 'Hofmann', 'Philipp', NULL, '1973-04-03 00:00:00', 'M', '1990-02-01 00:00:00', 'Marienufer', '16', '40127', 'Düsseldorf', '0211-353548'),
(95, 'Müller', 'Paul', NULL, '1976-07-09 00:00:00', 'M', '1995-02-01 00:00:00', 'Hauptweg', '33', '40101', 'Hilden', '02103-86756'),
(100, 'Peters', 'Franz', NULL, '1973-05-03 00:00:00', 'M', '1992-05-01 00:00:00', 'Hafenallee', '80', '40756', 'Düsseldorf', '0211-494593'),
(104, 'Maurer', 'Doris', NULL, '1980-09-03 00:00:00', 'W', '1988-11-01 00:00:00', 'Stutenallee', '65', '40053', 'Meerbusch', '02105-98757'),
(112, 'Bauer', 'Irene', 'von', '1980-12-19 00:00:00', 'W', '1996-06-01 00:00:00', 'Fuchsweg', '8', '41501', 'Krefeld', '02151-54874');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `strafen`
--
DROP TABLE IF EXISTS `strafen`;
CREATE TABLE IF NOT EXISTS `strafen` (
`ZAHLUNGSNR` int(11) PRIMARY KEY,
`SPIELERNR` int(11) NOT NULL default '0',
`DATUM` datetime default NULL,
`BETRAG` decimal(18,4) default NULL,
KEY `B556A64745B54B4A35DEC16B9C` (`SPIELERNR`),
KEY `IX_STRAFENKEY0` (`SPIELERNR`)
) engine=InnoDB;
--
-- RELATIONEN DER TABELLE `strafen`:
-- `SPIELERNR`
-- `spieler` -> `SPIELERNR`
--
--
-- Daten für Tabelle `strafen`
--
INSERT INTO `strafen` (`ZAHLUNGSNR`, `SPIELERNR`, `DATUM`, `BETRAG`) VALUES (1, 27, '1996-09-10 00:00:00', 100.0000),
(2, 27, '1996-11-12 00:00:00', 75.0000),
(3, 6, '1996-12-08 00:00:00', 100.0000),
(4, 104, '1996-12-08 00:00:00', 50.0000),
(5, 44, '1996-12-08 00:00:00', 25.0000),
(6, 8, '1996-12-08 00:00:00', 25.0000),
(7, 44, '1996-12-30 00:00:00', 30.0000),
(8, 44, '1997-05-05 00:00:00', 75.0000);
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `teams`
--
DROP TABLE IF EXISTS `teams`;
CREATE TABLE IF NOT EXISTS `teams` (
`TEAMNR` int(11) NOT NULL default '0',
`Captain` int(11) default NULL,
`LIGA` varchar(40) default NULL,
PRIMARY KEY (`TEAMNR`),
KEY `TEAMSSPIELERNR3` (`Captain`),
KEY `IX_TEAMSKEY1` (`Captain`)
) engine=InnoDB;
--
-- RELATIONEN DER TABELLE `teams`:
-- `SPIELERNR`
-- `spieler` -> `SPIELERNR`
--
--
-- Daten für Tabelle `teams`
--
INSERT INTO `teams` (`TEAMNR`, `Captain`, `LIGA`) VALUES (1, 6, 'Bundesliga'),
(2, 27, 'Regionalliga');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `wettkaempfe`
--
DROP TABLE IF EXISTS `wettkaempfe`;
CREATE TABLE IF NOT EXISTS `wettkaempfe` (
`TEAMNR` int(11) NOT NULL default '0',
`SPIELERNR` int(11) NOT NULL default '0',
`GEWONNEN` int(11) default NULL,
`VERLOREN` int(11) default NULL,
PRIMARY KEY (`TEAMNR`,`SPIELERNR`),
KEY `D6DCE74B17B24B677E2F51185C` (`SPIELERNR`),
KEY `TEAMSWETTKMPFE5` (`TEAMNR`),
KEY `IX_WETTKMPFEKEY0` (`SPIELERNR`),
KEY `IX_WETTKMPFEKEY2` (`TEAMNR`)
) engine=InnoDB;
--
-- RELATIONEN DER TABELLE `wettkaempfe`:
-- `SPIELERNR`
-- `spieler` -> `SPIELERNR`
-- `TEAMNR`
-- `teams` -> `TEAMNR`
--
--
-- Daten für Tabelle `wettkaempfe`
--
INSERT INTO `wettkaempfe` (`TEAMNR`, `SPIELERNR`, `GEWONNEN`, `VERLOREN`) VALUES (1, 2, 4, 8),
(1, 6, 9, 1),
(1, 8, 0, 1),
(1, 44, 7, 5),
(1, 57, 5, 0),
(1, 83, 3, 3),
(2, 8, 4, 4),
(2, 27, 11, 2),
(2, 104, 8, 4),
(2, 112, 4, 8);
--
-- Constraints der exportierten Tabellen
--
--
-- Constraints der Tabelle `strafen`
--
ALTER TABLE `strafen`
ADD CONSTRAINT `strafen_ibfk_1` FOREIGN KEY (`SPIELERNR`) REFERENCES `spieler` (`SPIELERNR`);
--
-- Constraints der Tabelle `teams`
--
ALTER TABLE `teams`
ADD CONSTRAINT `teams_ibfk_1` FOREIGN KEY (`Captain`) REFERENCES `spieler` (`SPIELERNR`);
--
-- Constraints der Tabelle `wettkaempfe`
--
ALTER TABLE `wettkaempfe`
ADD CONSTRAINT `wettkaempfe_ibfk_1` FOREIGN KEY (`SPIELERNR`) REFERENCES `spieler` (`SPIELERNR`),
ADD CONSTRAINT `wettkaempfe_ibfk_2` FOREIGN KEY (`TEAMNR`) REFERENCES `teams` (`TEAMNR`);

View File

@ -0,0 +1,35 @@
USE jugendgruppe;
#a
SELECT YEAR(Startdatum), COUNT(VeranstaltungID) FROM Veranstaltung
WHERE YEAR(Startdatum) = 2018;
#b
SELECT Person.Vorname, Person.Name, Person.Geburtsdatum FROM Person
JOIN VeranstaltungsTeilnahme ON VeranstaltungsTeilnahme.Teilnehmer = Person.PersonID
JOIN Veranstaltung ON Veranstaltung.VeranstaltungID = VeranstaltungsTeilnahme.Veranstaltung
WHERE Veranstaltung.Bezeichnung = "Kanutour 2018"
AND Person.Geburtsdatum = (
SELECT MAX(Person.Geburtsdatum) FROM Person
JOIN VeranstaltungsTeilnahme ON VeranstaltungsTeilnahme.Teilnehmer = Person.PersonID
JOIN Veranstaltung ON Veranstaltung.VeranstaltungID = VeranstaltungsTeilnahme.Veranstaltung
WHERE Veranstaltung.Bezeichnung = "Kanutour 2018"
);
#c
SELECT MedInformation.Beschreibung, COUNT(MedInfoZuTeilnehmer.Teilnehmer) FROM MedInformation
JOIN MedInfoZuTeilnehmer ON MedInfoZuTeilnehmer.MedInfo = MedInformation.MedID
GROUP BY MedInfoZuTeilnehmer.MedInfo;
#d
SELECT Teilnehmer.Vorname, Teilnehmer.Name, Betreuer.Vorname, Betreuer.Name FROM Person AS Teilnehmer
JOIN VeranstaltungsTeilnahme ON VeranstaltungsTeilnahme.Teilnehmer = Teilnehmer.PersonID
JOIN Veranstaltung ON Veranstaltung.VeranstaltungID = VeranstaltungsTeilnahme.Veranstaltung
JOIN VeranstaltungsBetreuer ON VeranstaltungsBetreuer.Veranstaltung = Veranstaltung.VeranstaltungID
JOIN Person AS Betreuer ON Betreuer.PersonID = VeranstaltungsBetreuer.Betreuer;
#e
SELECT VeranstaltungsKategorie.Name, COUNT(VeranstaltungsTeilnahme.Teilnehmer) FROM VeranstaltungsKategorie
JOIN Veranstaltung ON VeranstaltungsKategorie.KatID = Veranstaltung.VeranstaltungsKategorie
JOIN VeranstaltungsTeilnahme ON VeranstaltungsTeilnahme.Veranstaltung = Veranstaltung.VeranstaltungID
GROUP BY VeranstaltungsKategorie.KatID;

91
11fi5/AWP/jugengruppe.sql Normal file
View File

@ -0,0 +1,91 @@
DROP DATABASE IF EXISTS jugendgruppe;
CREATE DATABASE jugendgruppe;
USE jugendgruppe;
CREATE TABLE Ort
(
OrtID INT AUTO_INCREMENT,
PLZ VARCHAR(50),
Ort VARCHAR(50),
PRIMARY KEY(OrtID)
);
CREATE TABLE Person
(
PersonID INT AUTO_INCREMENT,
Name VARCHAR(50),
Vorname VARCHAR(50),
Anschrift VARCHAR(50),
OrtID INT,
Betreuer BOOL,
Geburtsdatum DATE,
PRIMARY KEY(PersonID),
FOREIGN KEY(OrtID) REFERENCES Ort(OrtID)
);
CREATE TABLE VeranstaltungsKategorie
(
KatID INT AUTO_INCREMENT,
Name VARCHAR(50),
PRIMARY KEY(KatID)
);
CREATE TABLE Veranstaltung
(
VeranstaltungID INT AUTO_INCREMENT,
Kategorie INT,
Startdatum DATE,
Enddatum DATE,
Bezeichnung VARCHAR(50),
PRIMARY KEY(VeranstaltungID),
FOREIGN KEY(Kategorie) REFERENCES VeranstaltungsKategorie(KatID)
);
CREATE TABLE MedInformation
(
MedID INT AUTO_INCREMENT,
Beschreibung VARCHAR(50),
PRIMARY KEY(MedID)
);
CREATE TABLE VeranstaltungsTeilnahme
(
Teilnehmer INT,
Veranstaltung INT,
Erlaubnis BOOL,
PRIMARY KEY(Teilnehmer, Veranstaltung),
FOREIGN KEY(Teilnehmer) REFERENCES Person(PersonID),
FOREIGN KEY(Veranstaltung) REFERENCES Veranstaltung(VeranstaltungID)
);
CREATE TABLE VeranstaltungVorkommnisse
(
VorkommnisID INT AUTO_INCREMENT,
Teilnehmer INT,
Veranstaltung INT,
Vorkommnis VARCHAR(150),
PRIMARY KEY(VorkommnisID),
FOREIGN KEY(Teilnehmer) REFERENCES Person(PersonID),
FOREIGN KEY(Veranstaltung) REFERENCES Veranstaltung(VeranstaltungID)
);
CREATE TABLE MedInfoZuTeilnehmer
(
Teilnehmer INT,
MedInfo INT,
PRIMARY KEY(Teilnehmer, MedInfo),
FOREIGN KEY(Teilnehmer) REFERENCES Person(PersonID),
FOREIGN KEY(MedInfo) REFERENCES MedInformation(MedID)
);
CREATE TABLE VeranstaltungsBetreuer
(
Betreuer INT,
Veranstaltung INT,
Leiter BOOL,
PRIMARY KEY(Betreuer, Veranstaltung),
FOREIGN KEY(Betreuer) REFERENCES Person(PersonID),
FOREIGN KEY(Veranstaltung) REFERENCES Veranstaltung(VeranstaltungID)
);

Binary file not shown.

View File

@ -0,0 +1,57 @@
USE luna2_innodb;
#a
SELECT * FROM tblabteilung;
#b
SELECT M_Vorname, M_Name FROM tblmitarbeiter;
#c
SELECT A_Name, A_Nr FROM tblabteilung WHERE A_Stadt = "München";
#d
SELECT M_Vorname, M_Name FROM tblmitarbeiter WHERE M_Nr >= 15000;
#e
SELECT * FROM tblprojekt WHERE P_Mittel > round(60000*0.9095, 2);
#f
SELECT M_Nr, P_Nr, T_Taetigkeit FROM tbltaetigkeit WHERE P_Nr = "p2";
#g, h
SELECT distinct(M_Nr) FROM tbltaetigkeit WHERE P_Nr IN ("p1", "p2");
#i
SELECT M_Nr, M_Name FROM tblmitarbeiter WHERE NOT A_Nr = "a2";
#j
SELECT * FROM tblmitarbeiter WHERE M_Nr IN (29346, 28559, 25384);
#k
SELECT * FROM tblmitarbeiter WHERE M_Nr NOT IN (10102, 9031);
#l
SELECT P_Name, P_Mittel FROM tblprojekt WHERE P_Mittel BETWEEN 95000 AND 120000;
#m
SELECT M_Nr FROM tbltaetigkeit WHERE T_Taetigkeit = "Projektleiter" AND NOT YEAR(T_Einstellungsdatum) = 1988;
#T_Einstellungsdatum NOT BETWEEN "1988-01-01" AND "1988-12-31";
#n
SELECT M_Nr, P_Nr FROM tbltaetigkeit WHERE T_Taetigkeit IS NULL AND P_Nr = "p1";
#o
SELECT M_Vorname, M_Name, M_Nr FROM tblmitarbeiter WHERE M_Name LIKE "K%";
#p
SELECT M_Name, M_Vorname, M_Nr FROM tblmitarbeiter WHERE M_Vorname LIKE "_a%";
#q
SELECT A_Nr, A_Stadt FROM tblabteilung WHERE A_Name BETWEEN "E%" AND "O%";
#r
SELECT M_Name, M_Vorname, M_Nr FROM tblmitarbeiter;
SELECT M_Name, M_Vorname, M_Nr FROM tblmitarbeiter WHERE NOT (M_Name BETWEEN "M%" AND "Q%" OR M_Vorname LIKE "H%");
#s
SELECT * FROM tblmitarbeiter WHERE NOT M_Name LIKE "%mann";

View File

@ -0,0 +1,27 @@
USE luna2_innodb;
SELECT * FROM tblabteilung;
INSERT INTO tblabteilung (A_Nr, A_Name, A_Stadt) VALUES ('a4', 'IT', 'Würzburg');
SELECT * FROM tblabteilung;
INSERT INTO tblabteilung (A_Nr, A_Name) VALUES ('a5', 'Marketing');
SELECT * FROM tblabteilung;
UPDATE tblabteilung SET A_Stadt='Schweinfurt' WHERE A_Nr='a5';
SELECT * FROM tblabteilung;
DELETE FROM tblabteilung WHERE A_nr='a4';
SELECT * FROM tblabteilung;
ALTER TABLE tblabteilung ADD Motivationsspruch VARCHAR(128) DEFAULT 'You are the best!';
SELECT * FROM tblabteilung;
ALTER TABLE tblabteilung DROP COLUMN Motivationsspruch;
SELECT * FROM tblabteilung;

View File

@ -0,0 +1,138 @@
-- phpMyAdmin SQL Dump
-- version 2.6.0-pl3
-- http://www.phpmyadmin.net
--
-- Host: localhost
-- Erstellungszeit: 26. Januar 2005 um 07:28
-- Server Version: 4.1.8
-- PHP-Version: 5.0.3
--
-- Datenbank: `luna2_innodb`
--
DROP DATABASE IF EXISTS `luna2_innodb`;
CREATE DATABASE `luna2_innodb` DEFAULT CHARACTER SET latin1 COLLATE latin1_general_ci;
USE luna2_innodb;
-- --------------------------------------------------------
--
-- Tabellenstruktur f<>r Tabelle `tblabteilung`
--
DROP TABLE IF EXISTS `tblabteilung`;
CREATE TABLE `tblabteilung` (
`A_Nr` varchar(50) collate latin1_general_ci NOT NULL default '',
`A_Name` varchar(50) collate latin1_general_ci NOT NULL default '',
`A_Stadt` varchar(50) collate latin1_general_ci NOT NULL default '',
PRIMARY KEY (`A_Nr`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci ROW_FORMAT=DYNAMIC;
--
-- Daten f<>r Tabelle `tblabteilung`
--
INSERT INTO `tblabteilung` (`A_Nr`, `A_Name`, `A_Stadt`) VALUES ('a1', 'Beratung', 'M<>nchen'),
('a2', 'Diagnose', 'M<EFBFBD>nchen'),
('a3', 'Freigabe', 'Stuttgart');
-- --------------------------------------------------------
--
-- Tabellenstruktur f<>r Tabelle `tblmitarbeiter`
--
DROP TABLE IF EXISTS `tblmitarbeiter`;
CREATE TABLE `tblmitarbeiter` (
`M_Nr` bigint(20) NOT NULL default '0',
`A_Nr` varchar(50) collate latin1_general_ci NOT NULL default '',
`M_Name` varchar(50) collate latin1_general_ci NOT NULL default '',
`M_Vorname` varchar(50) collate latin1_general_ci NOT NULL default '',
PRIMARY KEY (`M_Nr`),
KEY `IX_arbeitet` (`A_Nr`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci ROW_FORMAT=DYNAMIC;
--
-- Daten f<>r Tabelle `tblmitarbeiter`
--
INSERT INTO `tblmitarbeiter` (`M_Nr`, `A_Nr`, `M_Name`, `M_Vorname`) VALUES (2581, 'a2', 'Kaufmann', 'Brigitte'),
(9031, 'a2', 'Meier', 'Rainer'),
(10102, 'a3', 'Huber', 'Petra'),
(18316, 'a1', 'M<EFBFBD>ller', 'Gabriele'),
(25384, 'a3', 'Keller', 'Hans'),
(28559, 'a1', 'Mozer', 'Sibille'),
(29346, 'a2', 'Probst', 'Andreas');
-- --------------------------------------------------------
--
-- Tabellenstruktur f<>r Tabelle `tblprojekt`
--
DROP TABLE IF EXISTS `tblprojekt`;
CREATE TABLE `tblprojekt` (
`P_Nr` varchar(50) collate latin1_general_ci NOT NULL default '',
`P_Name` varchar(50) collate latin1_general_ci NOT NULL default '',
`P_Mittel` double NOT NULL default '0',
PRIMARY KEY (`P_Nr`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci ROW_FORMAT=DYNAMIC;
--
-- Daten f<>r Tabelle `tblprojekt`
--
INSERT INTO `tblprojekt` (`P_Nr`, `P_Name`, `P_Mittel`) VALUES ('p1', 'Apollo', 120000),
('p2', 'Gemini', 95000),
('p3', 'Merkur', 186500);
-- --------------------------------------------------------
--
-- Tabellenstruktur f<>r Tabelle `tbltaetigkeit`
--
DROP TABLE IF EXISTS `tbltaetigkeit`;
CREATE TABLE `tbltaetigkeit` (
`T_Nr` bigint(20) NOT NULL default '0',
`M_Nr` bigint(20) NOT NULL default '0',
`P_Nr` varchar(50) collate latin1_general_ci NOT NULL default '',
`T_Taetigkeit` varchar(50) collate latin1_general_ci default NULL,
`T_Einstellungsdatum` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`T_Nr`),
KEY `IX_bearbeitet` (`M_Nr`),
KEY `IX_fuer` (`P_Nr`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci ROW_FORMAT=DYNAMIC;
--
-- Daten f<>r Tabelle `tbltaetigkeit`
--
INSERT INTO `tbltaetigkeit` (`T_Nr`, `M_Nr`, `P_Nr`, `T_Taetigkeit`, `T_Einstellungsdatum`) VALUES (1, 10102, 'p1', 'Projektleiter', '1988-10-01 00:00:00'),
(2, 10102, 'p3', 'Gruppenleiter', '1989-01-01 00:00:00'),
(3, 25384, 'p2', 'Sachbearbeiter', '1988-02-15 00:00:00'),
(4, 18316, 'p2', NULL, '1989-06-01 00:00:00'),
(5, 29346, 'p2', NULL, '1987-12-15 00:00:00'),
(6, 2581, 'p3', 'Projektleiter', '1989-10-15 00:00:00'),
(7, 9031, 'p1', 'Gruppenleiter', '1989-04-15 00:00:00'),
(8, 28559, 'p1', NULL, '1988-08-01 00:00:00'),
(9, 28559, 'p2', 'Sachbearbeiter', '1989-02-01 00:00:00'),
(10, 9031, 'p3', 'Sachbearbeiter', '1988-11-15 00:00:00'),
(11, 29346, 'p1', 'Sachbearbeiter', '1989-04-01 00:00:00');
--
-- Constraints der exportierten Tabellen
--
--
-- Constraints der Tabelle `tblmitarbeiter`
--
ALTER TABLE `tblmitarbeiter`
ADD CONSTRAINT `tblmitarbeiter_ibfk_1` FOREIGN KEY (`A_Nr`) REFERENCES `tblabteilung` (`A_Nr`);
--
-- Constraints der Tabelle `tbltaetigkeit`
--
ALTER TABLE `tbltaetigkeit`
ADD CONSTRAINT `tbltaetigkeit_ibfk_1` FOREIGN KEY (`M_Nr`) REFERENCES `tblmitarbeiter` (`M_Nr`),
ADD CONSTRAINT `tbltaetigkeit_ibfk_2` FOREIGN KEY (`P_Nr`) REFERENCES `tblprojekt` (`P_Nr`);

View File

@ -0,0 +1,56 @@
USE luna2_innodb;
-- tblmitarbeiter
-- M_Nr
-- A_Nr -> tblabteilung
-- M_Name
-- M_Vorname
-- tbltaetigkeit
-- T_Nr
-- M_Nr -> tblmitarbeiter
-- P_Nr -> tblprojekt
-- T_Taetigkeit
-- T_Einstellungsdatum
-- tblabteilung
-- A_Nr
-- A_Name
-- A_Stadt
-- tblprojekt
-- P_Nr
-- P_Name
-- P_Mittel
#a
SELECT tblmitarbeiter.M_Vorname, tblmitarbeiter.M_Name, tblmitarbeiter.M_Nr, tblabteilung.A_Name, tblabteilung.A_Stadt FROM tblmitarbeiter
JOIN tblabteilung ON tblmitarbeiter.A_Nr = tblabteilung.A_Nr;
#b
SELECT tblmitarbeiter.*, tblprojekt.P_Name FROM tblmitarbeiter
JOIN tbltaetigkeit ON tblmitarbeiter.M_Nr = tbltaetigkeit.M_Nr
JOIN tblprojekt ON tbltaetigkeit.P_Nr = tblprojekt.P_Nr;
#c
SELECT DISTINCT tblmitarbeiter.A_Nr FROM tblmitarbeiter
JOIN tbltaetigkeit ON tbltaetigkeit.M_Nr = tblmitarbeiter.M_Nr
WHERE tbltaetigkeit.T_Einstellungsdatum = "1989-10-15";
#d
SELECT tblmitarbeiter.M_Vorname, tblmitarbeiter.M_Name, tblabteilung.A_Stadt FROM tblmitarbeiter
JOIN tblabteilung ON tblabteilung.A_Nr = tblmitarbeiter.A_Nr
JOIN tbltaetigkeit ON tbltaetigkeit.M_Nr = tblmitarbeiter.M_Nr
WHERE tbltaetigkeit.T_Taetigkeit = "Projektleiter";
#e
SELECT DISTINCT tblprojekt.P_Name FROM tblprojekt
JOIN tbltaetigkeit ON tbltaetigkeit.P_Nr = tblprojekt.P_Nr
JOIN tblmitarbeiter ON tbltaetigkeit.M_Nr = tblmitarbeiter.M_Nr
JOIN tblabteilung ON tblmitarbeiter.A_Nr = tblabteilung.A_Nr
WHERE tblabteilung.A_Name = "Diagnose";
#f
SELECT tblabteilung.* FROM tblabteilung
JOIN tblabteilung AS tblabteilung_other ON tblabteilung.A_Stadt = tblabteilung_other.A_Stadt
AND tblabteilung.A_Nr != tblabteilung_other.A_Nr;

View File

@ -0,0 +1,767 @@
-- phpMyAdmin SQL Dump
-- version 5.0.4
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Erstellungszeit: 08. Feb 2021 um 08:30
-- Server-Version: 10.4.17-MariaDB
-- PHP-Version: 7.4.13
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- Datenbank: `unternehmensdb`
--
DROP DATABASE IF EXISTS unternehmensdb;
CREATE DATABASE IF NOT EXISTS `unternehmensdb` DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
USE `unternehmensdb`;
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `abteilung`
--
CREATE TABLE `abteilung` (
`ABTEILUNGSNR` int(11) NOT NULL,
`BEZEICHNUNG` varchar(50) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Daten für Tabelle `abteilung`
--
INSERT INTO `abteilung` (`ABTEILUNGSNR`, `BEZEICHNUNG`) VALUES
(1, 'Geschäftsführung'),
(2, 'Support'),
(3, 'Rechnungswesen'),
(4, 'Einkauf'),
(5, 'Vertrieb'),
(6, 'Verwaltung');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `artikel`
--
CREATE TABLE `artikel` (
`ARTIKELNR` int(11) NOT NULL,
`BEZEICHNUNG` varchar(50) DEFAULT NULL,
`HERSTELLER` int(11) DEFAULT NULL,
`NETTOPREIS` decimal(10,2) DEFAULT NULL,
`MWST` int(11) DEFAULT NULL,
`BESTAND` int(11) DEFAULT NULL,
`MINDESTBESTAND` int(11) DEFAULT NULL,
`KATEGORIE` int(11) DEFAULT NULL,
`BESTELLVORSCHLAG` char(1) DEFAULT '0'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Daten für Tabelle `artikel`
--
INSERT INTO `artikel` (`ARTIKELNR`, `BEZEICHNUNG`, `HERSTELLER`, `NETTOPREIS`, `MWST`, `BESTAND`, `MINDESTBESTAND`, `KATEGORIE`, `BESTELLVORSCHLAG`) VALUES
(1, '106075', 1, '137.93', 2, 100, 10, 1, '1'),
(2, '106055', 1, '172.14', 2, 100, 10, 1, '1'),
(3, '753S', 2, '111.21', 2, 100, 10, 1, '1'),
(4, '757P', 2, '145.69', 2, 100, 10, 1, '1'),
(5, '1200NF', 2, '602.59', 2, 100, 10, 1, '0'),
(6, 'CanoScan LiDE 20', 7, '47.41', 2, 100, 10, 2, '1'),
(7, 'CanoScan 5000F', 7, '132.76', 2, 100, 10, 2, '0'),
(8, 'Perfection1670', 8, '81.03', 2, 100, 10, 2, '0'),
(9, 'ScanJet 2400', 4, '63.79', 2, 100, 10, 2, '1'),
(10, 'ScanJet 8290', 4, '1507.76', 2, 100, 10, 2, '1'),
(11, 'Millenium G450', 5, '81.03', 2, 100, 10, 3, '0'),
(12, 'Millenium G550', 5, '85.34', 2, 100, 10, 3, '0'),
(13, 'Millenium G650', 5, '137.07', 2, 100, 10, 3, '1'),
(14, 'Millenium P750', 5, '197.41', 2, 5, 10, 3, '1'),
(15, 'Parhelia 512', 5, '309.48', 2, 100, 10, 3, '1'),
(16, 'SV0802N', 2, '55.17', 2, 100, 10, 4, '1'),
(17, 'SP0802N', 2, '63.79', 2, 100, 10, 4, '0'),
(18, 'SV1203N', 2, '72.41', 2, 100, 10, 4, '1'),
(19, 'SP1604N', 2, '93.97', 2, 100, 10, 4, '1'),
(20, 'MHT2060AH', 9, '197.41', 2, 100, 10, 4, '0'),
(21, 'Aureon 5.1 Fun', 6, '33.62', 2, 100, 10, 5, '1'),
(22, 'Aureon 5.1 Fun Games', 6, '42.24', 2, 100, 10, 5, '1'),
(23, 'Aureon 5.1 Sky', 6, '68.10', 2, 100, 10, 5, '1'),
(24, 'Aureon 5.1 USB', 6, '85.34', 2, 100, 10, 5, '0'),
(25, 'Aureon 5.1 Universe', 6, '206.03', 2, 100, 10, 5, '0'),
(26, 'Internet Keyboard', 10, '17.23', 2, 100, 10, 6, '0'),
(27, 'Office Keyboard', 10, '25.85', 2, 100, 10, 6, '1'),
(28, 'Natural MultiMedia', 10, '23.28', 2, 100, 10, 6, '1'),
(29, 'MultiMedia Keyboard refresh', 10, '27.59', 2, 100, 10, 6, '0'),
(30, 'WL Optical Desctop for Bluetooth', 10, '128.45', 2, 100, 10, 6, '1'),
(31, 'DeskJet 3520', 4, '33.62', 2, 100, 10, 7, '1'),
(32, 'OfficeJet 7140xi', 4, '539.97', 2, 100, 10, 7, '0'),
(33, 'LaserJet 1150', 4, '240.51', 2, 100, 10, 7, '1'),
(34, 'i250', 7, '46.55', 2, 100, 10, 7, '1'),
(35, 'BJC-5500', 7, '645.69', 2, 100, 10, 7, '0'),
(36, 'Stylus C44 Plus', 8, '46.55', 2, 100, 10, 7, '0'),
(37, 'Stylus Photo R300', 8, '150.00', 2, 100, 10, 7, '1'),
(38, 'Basic Optical Mouse SB', 10, '12.07', 2, 100, 10, 10, '1'),
(39, 'Mouse Blue', 10, '25.00', 2, 100, 10, 10, '1'),
(40, 'Wireless InteliMouse Explorer BT', 10, '72.41', 2, 100, 10, 10, '0'),
(41, 'Windows 2000 Professional', 10, '124.14', 2, 100, 10, 8, '0'),
(42, 'Windows XP Home Edition', 10, '101.97', 2, 100, 10, 8, '1'),
(43, 'Office XP Pro', 10, '516.38', 2, 100, 10, 8, '1'),
(44, 'Visual Studio.NET 2003', 10, '1766.38', 2, 100, 10, 8, '1'),
(45, 'Works Suite 2004', 10, '93.97', 2, 100, 10, 8, '1'),
(46, 'SC-152A', 2, '13.79', 2, 100, 10, 9, '1'),
(47, 'SW252', 2, '33.62', 2, 100, 10, 9, '0'),
(48, 'SM-352', 2, '59.48', 2, 100, 10, 9, '1'),
(49, 'SD-616', 2, '25.00', 2, 100, 10, 9, '1'),
(50, 'SC-152A schwarz', 2, '14.66', 2, 100, 10, 9, '1');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `bestellung`
--
CREATE TABLE `bestellung` (
`BESTELLNR` int(11) NOT NULL,
`KUNDENNR` int(11) DEFAULT NULL,
`BESTELLDATUM` date DEFAULT NULL,
`LIEFERDATUM` date DEFAULT NULL,
`RECHNUNGSBETRAG` decimal(10,2) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Daten für Tabelle `bestellung`
--
INSERT INTO `bestellung` (`BESTELLNR`, `KUNDENNR`, `BESTELLDATUM`, `LIEFERDATUM`, `RECHNUNGSBETRAG`) VALUES
(1, 1, '2001-02-20', '2001-11-20', '359.68'),
(2, 2, '2001-02-20', '2001-11-20', '107.99'),
(3, 3, '2001-02-20', '2001-11-20', '322.99'),
(4, 4, '2001-02-20', '2001-11-20', '109.00'),
(5, 5, '2001-02-20', '2001-11-20', '109.00'),
(6, 6, '2001-02-20', '2001-11-20', '31.99'),
(7, 7, '2001-02-20', '2001-11-20', '267.99'),
(8, 8, '2001-02-20', '2001-11-20', '98.99'),
(9, 9, '2001-02-20', '2001-11-20', '29.00'),
(10, 10, '2001-02-20', '2001-11-20', '388.00'),
(11, 11, '2001-02-20', '2001-11-20', '229.00'),
(12, 12, '2001-02-20', '2001-11-20', '54.00'),
(13, 13, '2001-02-20', '2001-11-20', '173.00'),
(14, 14, '2001-02-20', '2001-11-20', '164.99'),
(15, 15, '2001-02-20', '2001-11-20', '54.00'),
(16, 16, '2001-02-20', '2001-11-20', '156.00'),
(17, 17, '2001-02-20', '2001-11-20', '54.00'),
(18, 18, '2001-02-20', '2001-11-20', '54.00'),
(19, 19, '2001-02-20', '2001-11-20', '144.00'),
(20, 20, '2001-02-20', '2001-11-20', '74.00'),
(21, 21, '2001-02-20', '2001-11-20', '599.05'),
(22, 22, '2001-02-20', '2001-11-20', '109.01'),
(23, 23, '2001-02-20', '2001-11-20', '626.37'),
(24, 24, '2001-02-20', '2001-11-20', '457.99'),
(25, 25, '2001-02-20', '2001-11-20', '27.00'),
(26, 9, '2001-02-20', '2001-11-20', '171.99'),
(27, 26, '2001-02-20', '2001-11-20', '54.00'),
(28, 27, '2001-02-20', '2001-11-20', '84.00'),
(29, 28, '2001-02-20', '2001-11-20', '797.99'),
(30, 29, '2001-02-20', '2001-11-20', '81.01'),
(31, 30, '2001-02-20', '2001-11-20', '359.00'),
(32, 31, '2001-02-20', '2001-11-20', '84.00'),
(33, 15, '2001-02-20', '2001-11-20', '28.00'),
(34, 32, '2001-02-20', '2001-11-20', '169.00'),
(35, 33, '2001-02-20', '2001-11-20', '239.00'),
(36, 4, '2001-02-20', '2001-11-20', '736.36'),
(37, 34, '2001-02-20', '2001-11-20', '109.01'),
(38, 35, '2001-02-20', '2001-11-20', '118.29'),
(39, 36, '2001-02-20', '2001-11-20', '148.99'),
(40, 37, '2001-02-20', '2001-11-20', '74.00'),
(41, 38, '2001-02-20', '2001-11-20', '188.00'),
(42, 39, '2001-02-20', '2001-11-20', '59.97'),
(43, 40, '2001-02-20', '2001-11-20', '84.00'),
(44, 41, '2001-02-20', '2001-11-20', '98.99'),
(45, 42, '2001-02-20', '2001-11-20', '154.00'),
(46, 23, '2001-02-20', '2001-11-20', '14.00'),
(47, 43, '2001-02-20', '2001-11-20', '39.00'),
(48, 44, '2001-02-20', '2001-11-20', '0.00'),
(49, 45, '2001-02-20', '2001-11-20', '626.37'),
(50, 46, '2001-02-20', '2001-11-20', '127.99'),
(51, 47, '2001-02-20', '2001-11-20', '198.00'),
(52, 7, '2001-02-20', '2001-11-20', '81.01'),
(53, 48, '2001-02-20', '2001-11-20', '54.00'),
(54, 49, '2001-02-20', '2001-11-20', '144.00'),
(55, 50, '2001-02-20', '2001-11-20', '457.99'),
(56, 51, '2001-02-20', '2001-11-20', '32.00'),
(57, 42, '2001-02-20', '2001-11-20', '160.00'),
(58, 52, '2001-02-20', '2001-11-20', '84.00'),
(59, 53, '2001-02-20', '2001-11-20', '1252.73'),
(60, 54, '2001-02-20', '2001-11-20', '98.99'),
(61, 55, '2001-02-20', '2001-11-20', '258.01'),
(62, 56, '2001-02-20', '2001-11-20', '201.99'),
(63, 57, '2001-02-20', '2001-11-20', '169.00'),
(64, 58, '2001-02-20', '2001-11-20', '397.28'),
(65, 2, '2001-02-20', '2001-11-20', '3798.00'),
(66, 59, '2001-02-20', '2001-11-20', '131.98'),
(67, 60, '2001-02-20', '2001-11-20', '308.98'),
(68, 29, '2001-02-20', '2001-11-20', '159.00'),
(69, 61, '2001-02-20', '2001-11-20', '462.00'),
(70, 62, '2001-02-20', '2001-11-20', '150.00'),
(71, 36, '2001-02-20', '2001-11-20', '82.00'),
(72, 63, '2001-02-20', '2001-11-20', '4235.97'),
(73, 64, '2001-02-20', '2001-11-20', '768.00'),
(74, 17, '2001-02-20', '2001-11-20', '2442.26'),
(75, 43, '2001-02-20', '2001-11-20', '1506.26'),
(76, 65, '2001-02-20', '2001-11-20', '1429.38'),
(77, 66, '2001-02-20', '2001-11-20', '1699.98'),
(78, 67, '2001-02-20', '2001-11-20', '839.99'),
(79, 68, '2001-02-20', '2001-11-20', '198.00');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `hersteller`
--
CREATE TABLE `hersteller` (
`HERSTELLERNR` int(11) NOT NULL,
`NAME` varchar(50) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Daten für Tabelle `hersteller`
--
INSERT INTO `hersteller` (`HERSTELLERNR`, `NAME`) VALUES
(1, 'Belinea'),
(2, 'Samsung'),
(3, 'Sony'),
(4, 'HP'),
(5, 'Matrox'),
(6, 'Terratec'),
(7, 'Canon'),
(8, 'Epson'),
(9, 'Fujitsu'),
(10, 'Microsoft'),
(11, 'Asus'),
(12, 'Acer'),
(13, 'Dell');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `jobticket`
--
CREATE TABLE `jobticket` (
`ID` int(11) NOT NULL,
`BESTELLNR` int(11) DEFAULT NULL,
`MITARBEITERNR` int(11) DEFAULT NULL,
`GUELTIG_BIS` date DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Daten für Tabelle `jobticket`
--
INSERT INTO `jobticket` (`ID`, `BESTELLNR`, `MITARBEITERNR`, `GUELTIG_BIS`) VALUES
(1, 1, 1, '2001-01-20'),
(2, 1, 1, '2001-01-20'),
(3, 4, 2, '2001-01-23'),
(4, 6, 2, '2001-01-23'),
(5, 6, 2, '2001-01-25'),
(6, 7, 3, '2001-02-03');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `kategorie`
--
CREATE TABLE `kategorie` (
`KATEGORIENR` int(11) NOT NULL,
`BEZEICHNUNG` varchar(50) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Daten für Tabelle `kategorie`
--
INSERT INTO `kategorie` (`KATEGORIENR`, `BEZEICHNUNG`) VALUES
(1, 'Monitore'),
(2, 'Scanner'),
(3, 'Grafikkarten'),
(4, 'Festplatten'),
(5, 'Soundkarten'),
(6, 'Keyboards'),
(7, 'Drucker'),
(8, 'Software'),
(9, 'Laufwerke'),
(10, 'Mäuse'),
(11, '3,5-Zoll-Disketten');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `kunde`
--
CREATE TABLE `kunde` (
`KUNDENNR` int(11) NOT NULL,
`NAME` varchar(50) DEFAULT NULL,
`VORNAME` varchar(50) DEFAULT NULL,
`STRASSE` varchar(50) DEFAULT NULL,
`PLZ` char(14) DEFAULT NULL,
`ORT` varchar(50) DEFAULT NULL,
`TELEFON_GESCH` varchar(25) DEFAULT NULL,
`TELEFON_PRIVAT` varchar(25) DEFAULT NULL,
`EMAIL` varchar(50) DEFAULT NULL,
`ZAHLUNGSART` char(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Daten für Tabelle `kunde`
--
INSERT INTO `kunde` (`KUNDENNR`, `NAME`, `VORNAME`, `STRASSE`, `PLZ`, `ORT`, `TELEFON_GESCH`, `TELEFON_PRIVAT`, `EMAIL`, `ZAHLUNGSART`) VALUES
(1, 'Loewe', 'Arthur', 'Sebastianstraße 134', '50737', 'Köln', NULL, '19467383', NULL, 'B'),
(2, 'Adler', 'Felix', 'Goethestraße 4', '30453', 'Hannover', '9856023452', '10562382', 'adler@on-line.de', 'R'),
(3, 'Stein', 'Johannes', 'Elisabethenstr. 23', '53111', 'Bonn', '99746227', '99746228', 'johnny@hip.de', 'N'),
(4, 'Falkner', 'Michael', 'Querfeldstraße 21', '65187', 'Wiesbaden', '13726583', '48892768', 'mischa24@wysiwyg.com', 'V'),
(5, 'Lederer', 'Helene', 'Rennbahnstraße 6', '50733', 'Köln', '87126534', '32675491', 'lele@lederer-world.de', 'K'),
(6, 'Kogen', 'Arnold', 'Clara-Viebig-Straße 17', '53179', 'Bonn', NULL, '55819269', NULL, 'B'),
(7, 'Schneider', 'Benedikt', 'Vahrendorfer Stadtweg 61', '21075', 'Hamburg', NULL, '93728815', 'benni@postfach-online.de', 'B'),
(8, 'Dietrich', 'Diana', 'Kastanienallee 675', '65199', 'Wiesbaden', NULL, '56112894', 'diedietrich@on-line.de', 'V'),
(9, 'Voglin', 'Jakob', 'Engeldamm 34', '12487', 'Berlin', '999657324', '12432673', 'voglin@berliner-tagblatt.de', 'K'),
(10, 'Stern', 'Martin', 'Knaufstraße 453', '50858', 'Köln', '72891174', '17582964', 'martin.stern@on-line.de', 'B'),
(11, 'Marsch', 'Ronald', 'Große Telegraphenstraße 95', '50769', 'Köln', '16547326', '99234713', 'ronnie@on-line.de', 'B'),
(12, 'Fromkess', 'Leon', 'Schmittgasser Kirchweg 44', '53129', 'Bonn', '67346248', '19684375', 'leon.fromkess@lola.com', 'R'),
(13, 'Badel', 'Sarah', 'Am Ginsterpfad 74', '51147', 'Köln', '17483763', '82675271', 's.badel@on-line.de', 'R'),
(14, 'Schäfer', 'Willi', 'Bei der blauen Brücke 119', '22083', 'Hamburg', '02857204', '86756251', 'schaefer32@lola.com', 'R'),
(15, 'Front', 'Jeremias', 'Reichskanzlerstraße 71', '22525', 'Hamburg', '5685710', '86957248', 'jerry@gartenlaubenfreunde.de', 'B'),
(16, 'Wilhelms', 'Simon', 'Gustav-Freytag-Straße 22', '51069', 'Köln', '19785737', '98760438', NULL, 'N'),
(17, 'Grunpeter', 'Sascha', 'Pascalstraße 64', '52121', 'Bonn', '918574736', '11768462', 'sagrun@lola.com', 'R'),
(18, 'Marx', 'Alfred', 'Gabriele-Muenter-Straße 102', '51371', 'Leverkusen', '02759285', '849647286', 'alfred_marx@on-line.de', 'R'),
(19, 'Kops', 'Bernhard', 'Gunther-Plüschow-Straße 47', '50739', 'Köln', '10675849', '61969285', 'berniekops@lola.com', 'B'),
(20, 'Elson', 'Andrea', 'Herzog-Alf-Weg 13', '20459', 'Hamburg', '28795823', '967584483', 'elson@elsons-laedchen.de', 'R'),
(21, 'Kaplan', 'Marvin', 'Oskar-Schlemmer-Straße 72', '50933', 'Köln', NULL, '96857385', 'marvin@marc-aurel-jg-2001.de', 'K'),
(22, 'Glaister', 'Gabrielle', 'Simrockallee 2', '53227', 'Bonn', '97857358', '304760583', 'gabyglaister@on-line.de', 'N'),
(23, 'Knutt', 'Robert', 'Metzgerstraße 81', '52076', 'Aachen', '29786682', '10684937', 'robert@robert-knutt.de', 'B'),
(24, 'Reiner', 'Robert', 'Pattscheider Weg 7', '51147', 'Köln', '19587238', '017589375', 'meathead@lola.com', 'B'),
(25, 'Grunert', 'Paul', 'Jütländer Allee 236', '22415', 'Hamburg', '19473825', '47294978', 'paul@briefmarken-hamburg.de', 'R'),
(26, 'Free', 'Oliver', 'Pferdmengesstraße 58', '50672', 'Köln', '19473067', '94728395', 'ollifree@fc-koelle-for-ever.de', 'K'),
(27, 'Frankau', 'Nicholas', 'Rennbahnstraße 83', '65207', 'Wiesbaden', '10264738', '91650376', 'nick.frank@on-line.de', 'R'),
(28, 'Weinberger', 'Eduard', 'Modersohnstraße 112', '10965', 'Berlin', '57480399', '10275748', 'weinberger@lola.com', 'K'),
(29, 'Mann', 'Miriam', 'Wielandplatz 8', '99425', 'Weimar', '19786854', '19786743', 'miriam-mann@on-line.de', 'N'),
(30, 'Waring', 'Georg', 'Merkenicher Ringstraße 313', '51103', 'Köln', '01896748', '71835738', 'waring@polstermoebel-schmidt.de', 'R'),
(31, 'Locke', 'Albert', 'Bundesgrenzschutzplatz 32', '53177', 'Bonn', '47382765', '19684758', 'Bertie@Wooster.de', 'K'),
(32, 'Mills', 'Michael', 'Im Grund 4', '51063', 'Köln', '86758685', '10894519', 'michael@mills-and-more.de', 'R'),
(33, 'Brisebois', 'Danielle', 'Bismarckstraße 9', '53721', 'Siegburg', '91856748', '27685710', 'danielle@tricatel.fr', 'R'),
(34, 'Dorning', 'Robert', 'Hunnebeckweg 21', '48147', 'Münster', '57483910', '153424352', 'dorne@hip.de', 'N'),
(35, 'Sperber', 'Milo', 'Zypressenweg 3', '22457', 'Hamburg', '67582978', '564736540', 'milo@lola.com', 'B'),
(36, 'Fabrizi', 'Mario', 'Auf dem Hunnenrücken 19', '50999', 'Köln', '142398079', '09978699', 'mario.fabrizi@on-line.de', 'K'),
(37, 'Anderson', 'Margarete', 'Machabäerstraße 34', '50735', 'Köln', '27685741', '09987890', 'gretel.anderson@on-line.de', 'V'),
(38, 'May', 'Jakob', 'In der Dasladen 9', '51373', 'Leverkusen', '197869504', '19785673', 'mayday@pc-helfer-leverkusen.de', 'N'),
(39, 'Palk', 'Anna', 'Winston-Churchill-Straße 80', '53129', 'Bonn', '197867513', '154635241', 'anpal@on-line.de', 'R'),
(40, 'Kaufmann', 'Andreas', 'Am Alten Brauhaus 11', '51105', 'Köln', '0796835460', '01758362', 'andy@koelner-taxis.de', 'V'),
(41, 'Bussell', 'Mark', 'Hanfgartenstraße 63', '81475', 'München', '473829201', '13246359', 'bussell@bavaria-bank.de', 'R'),
(42, 'Clement', 'Richard', 'Fröbelstraße 26', '12161', 'Berlin', NULL, '57297867', 'clem@on-line.de', 'B'),
(43, 'Handl', 'Irene', 'Berberitzenweg 7', '50678', 'Köln', '84736291', '98675842', 'irenehandl@lola.com', 'R'),
(44, 'Landesberg', 'Stefan', 'Kleiner Griechenmarkt 19', '51107', 'Köln', '08978569', '186759472', 'Steve@metal-rules.de', 'N'),
(45, 'Lenhart', 'Heidi', 'Mozartstraße 73', '51371', 'Leverkusen', '19705832', '879685740', 'heidi@montana-dreaming.de', 'R'),
(46, 'Wendt', 'Georg', 'Froschkönigweg 32', '50767', 'Köln', '23142312', '06905964', 'Georg@on-line.de', 'R'),
(47, 'Masur', 'Richard', 'Up den Wiemen 46', '22609', 'Hamburg', '29671323', '29685749', 'masur@on-line.de', 'R'),
(48, 'Gross', 'Michael', 'Neptunstraße 33', '12621', 'Berlin', '37685940', '197867580', 'm.gross@lola.com', 'B'),
(49, 'Hirsch', 'Andreas', 'Waidmarkt 16', '50735', 'Köln', '19783060', '57483657', 'andreas.hirsch@on-line.de', 'N'),
(50, 'Hecht', 'Jessica', 'Im Teich 42', '51105', 'Köln', '26453756', '98786029', 'jessie.hecht@lola.com', 'R'),
(51, 'Kaminski', 'Melvin', 'Neue ABC-Straße 504', '22607', 'Hamburg', '97860169', '57192060', 'mel@bancroft-and-brooks.com', 'B'),
(52, 'Schäfer', 'Natalie', 'Mittelstraße 50', '53225', 'Bonn', '58672901', '91254341', 'nati@on-line.de', 'N'),
(53, 'Persky', 'Lisa', 'Keplerstraße 48', '40489', 'Düsseldorf', '19562109', '38295647', 'lisa.persky@kunsthaus-persky.de', 'N'),
(54, 'Steuer', 'Paul', 'Langweidenstraße 67', '60386', 'Frankfurt Main', '01867493', '19887960', 'paul.steuer@on-line.de', 'R'),
(55, 'Karn', 'Richard', 'Jan-Wellem-Straße 34', '50668', 'Köln', '97860927', '37681936', 'karn.koeln@on-line.de', 'V'),
(56, 'Barron', 'Marion', 'Im Fuldchen 7', '60435', 'Frankfurt Main', '13241735', '91703275', 'barron.marion@lola.com', 'B'),
(57, 'Mull', 'Martin', 'Rautendeleinweg 29', '40593', 'Düsseldorf', '10923874', '57463524', 'mamu@on-line.de', 'N'),
(58, 'Kay', 'Sylvia', 'Gutzkowstraße 58', '21079', 'Hamburg', '95847772', '17584637', 'kay@web-postfaecher.de', 'R'),
(59, 'Singer', 'Alex', 'Neumoorstück 15', '20459', 'Hamburg', '96857682', '19685733', 'alex@lola.com', 'N'),
(60, 'Zagorsky', 'Annette', 'Isarstraße 75', '30559', 'Hannover', '286957483', '10395738', 'annette@zagorsky-verlag-und-druck.de', 'R'),
(61, 'Hecht', 'Gina', 'Schulgasse 28', '65207', 'Wiesbaden', '195748372', '83746293', 'gina.hecht@on-line.de', 'R'),
(62, 'Penner', 'Jonathan', 'Von-Lapp-Straße 66', '53125', 'Bonn', '17581253', '28547639', 'penner@lola.com', 'B'),
(63, 'Kampmann', 'Stefan', 'Gustav-Mahler-Straße 64', '50733', 'Köln', '19463827', '12647366', 'kampmann@computer-kampmann.de', 'R'),
(64, 'Rasche', 'David', 'Boxgraben 9', '52078', 'Aachen', '18675943', '19574838', 'dave@com-cafe.de', 'N'),
(65, 'Wolf', 'Susanne', 'Veilchenstieg 26', '22297', 'Hamburg', '96857486', '768574676', 'susi.wolf@on-line.de', 'R'),
(66, 'Barber', 'Paul', 'Mühlenweg 19', '10405', 'Berlin', NULL, '46375483', NULL, 'R'),
(67, 'Martin', 'Melanie', 'Löwengasse 17', '51105', 'Köln', '57465748', '97867586', 'melanie.martin@on-line.de', 'R'),
(68, 'Lukas', 'Karl', 'Max-Hartig-Weg 20', '60386', 'Frankfurt Main', '91657438', '35462817', 'k.lukas@lola.com', 'N'),
(69, 'Zucker', 'David', 'Abbestraße 38', '09114', 'Chemnitz', '97860231', '16453271', 'd.zucker@zucker-suess.de', 'R'),
(70, 'Sim', 'Gerald', 'Lobositzstraße 63', '51103', 'Köln', '57463892', '18675290', 'gerald.s@on-line.de', 'R'),
(71, 'Arnold', 'Thomas', 'Industriestraße 543', '21109', 'Hamburg', '18796851', '57481503', 'tom@mayim-bialik-fans.de', 'B'),
(72, 'Hart', 'Melissa', 'Gurkenweg 4', '30655', 'Hannover', '94768592', '37685749', 'lisa.hart@lola.com', 'R'),
(73, 'Ure', 'Gudrun', 'Lochumer Weg 23', '50668', 'Köln', NULL, '28675942', 'gudrun.ure@on-line.de', 'N'),
(74, 'Anwar', 'Mina', 'Putzdelle 86', '51379', 'Leverkusen', '19675849', '16574638', 'm.anwar@on-line.de', 'N'),
(75, 'Kerr', 'Annette', 'Brander Heide 37', '52066', 'Aachen', '19786758', '97867592', 'anette.kerr@modehaus-kerr-aachen.de', 'R'),
(76, 'Lembeck', 'Helene', 'Fuldaer Straße 73', '60486', 'Frankfurt Main', '67581930', '19786024', 'lele39@on-line.de', 'V'),
(77, 'Fleischer', 'Karl', 'Kriemhildstraße 38', '21109', 'Hamburg', '18695783', '97867261', 'fleischer@web-postfaecher.de', 'R'),
(78, 'Kaufmann', 'Andreas', 'Fabriciusstieg 47', '20257', 'Hamburg', '96847392', '53427164', 'andreas.kaufmann@zmuda.de', 'K'),
(79, 'Eles', 'Sandor', 'Diedenhofer Straße 63', '22419', 'Hamburg', '98362781', '87926715', 'sandor.eles@on-line.de', 'R'),
(80, 'Voland', 'Herbert', 'Düsseldorfer Straße 90', '50939', 'Köln', '86932710', '83756493', 'herbert.voland@on-line.de', 'R'),
(81, 'Stoller', 'Alfred', 'Voltastraße 53', '60388', 'Frankfurt Main', '00418673', '65884192', 'alfi.stoller@lola.com', 'N'),
(82, 'Martin', 'Georg', 'Hermesgasse 17', '51145', 'Köln', '29675813', '16475855', 'g.martin@web-postfaecher.de', 'B'),
(83, 'Durdan', 'Richard', 'Görlitzer Straße 41', '60313', 'Frankfurt Main', '96815376', '27681930', 'dickdurdan@lola.com', 'K'),
(84, 'Bonner', 'Frank', 'Shakespeareplatz 35', '14055', 'Berlin', '36277361', '17564832', 'frank.bonner2@on-line.de', 'R'),
(85, 'Baden-Semper', 'Nina', 'Brookdamm 68', '20457', 'Hamburg', '27564932', '04437193', 'nina@web-postfaecher.de', 'R'),
(86, 'Mandan', 'Robert', 'Kösener Weg 8', '40489', 'Düsseldorf', '56473329', '17564932', 'robert.mandan@on-line.de', 'N'),
(87, 'Fenacolini', 'Anna', 'Josef-Hirn-Platz 4', '50597', 'Stuttgart', '19685493', '57463829', 'anna.fenacolini@stuttgart-uni.de', 'R'),
(88, 'Hordern', 'Michael', 'Schwengelkamp 44', '20255', 'Hamburg', '19685723', '375847650', 'michael.hordern@on-line.de', 'R'),
(89, 'Dane', 'Alexandra', 'Langeler Kreuzweg 92', '51063', 'Köln', '195647382', '95768323', 'xandra@fc-koelle-for-ever.de', 'N'),
(90, 'Scolari', 'Peter', 'Ella-Kay-Straße 85', '13357', 'Berlin', '18574639', '26574619', 'peter.scolari@on-line.de', 'R'),
(91, 'Herbert', 'Philipp', 'Am Pulverhof 52', '22045', 'Hamburg', '28576462', '82868584', 'philipp.herbert@lola.com', 'R'),
(92, 'Kraft', 'Robert', 'Hohenzollernring 103', '14129', 'Berlin', '18463728', '07869237', 'kraft@tierhaus-kraft.de', 'N'),
(93, 'Donner', 'Robert', 'Bebelplatz 12', '51149', 'Köln', '18679684', '37586472', 'donner@donner-und-blitz-medien.de', 'R'),
(94, 'Sadowsky', 'Adam', 'Colmarer Straße 73', '28327', 'Bremen', '96857328', '17564834', 'adam.sadowsky@on-line.de', 'R'),
(95, 'Hartman', 'Philipp', 'Hamburger Hochstraße 19', '22767', 'Hamburg', '29371826', '85647291', 'philipp@radio-bill.de', 'N'),
(96, 'Piekarsky', 'Julia', 'Quinxer Straße 6', '52074', 'Aachen', '28574639', '17685743', 'piekarsky@web-postfaecher.de', 'R'),
(97, 'Eiding', 'Paul', 'Goerdelerstraße 37', '65195', 'Wiesbaden', NULL, '27564832', NULL, 'N'),
(98, 'Ritter', 'Hannes', 'Emschertalstraße 73', '44149', 'Dortmund', '27584637', NULL, 'hannes.ritter@lola.com', 'R'),
(99, 'Adrian', 'Iris', 'Vulkanstraße 46', '50677', 'Köln', '18675943', '27564839', 'iris.adrian@on-line.de', 'N'),
(100, 'Slotky', 'Anna', 'Anita-Ree-Straße 61', '22087', 'Hamburg', '28574635', '29186753', 'slotky@zzzorro.de', 'K');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `mitarbeiter`
--
CREATE TABLE `mitarbeiter` (
`MITARBEITERNR` int(11) NOT NULL,
`NAME` varchar(50) DEFAULT NULL,
`VORNAME` varchar(50) DEFAULT NULL,
`STRASSE` varchar(50) DEFAULT NULL,
`PLZ` char(14) DEFAULT NULL,
`ORT` varchar(50) DEFAULT NULL,
`GEHALT` decimal(10,2) DEFAULT NULL,
`ABTEILUNG` int(11) DEFAULT NULL,
`TELEFONNUMMER` varchar(25) DEFAULT NULL,
`EMAIL` varchar(50) DEFAULT NULL,
`EINTRITTSDATUM` date DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Daten für Tabelle `mitarbeiter`
--
INSERT INTO `mitarbeiter` (`MITARBEITERNR`, `NAME`, `VORNAME`, `STRASSE`, `PLZ`, `ORT`, `GEHALT`, `ABTEILUNG`, `TELEFONNUMMER`, `EMAIL`, `EINTRITTSDATUM`) VALUES
(1, 'Ross', 'Hagen', 'Hauptstraße 67', '53123', 'Bonn', '7500.00', 1, '43567890', 'hagen.ross@beispielfirma.de', '1986-01-01'),
(2, 'Roberts', 'Patrick', 'Schillerstraße 154', '53229', 'Bonn', '7000.00', 1, '98761462', 'p.roberts@beispielfirma.de', '1986-01-01'),
(3, 'Hummer', 'Stefan', 'Sonnenhag 74', '53175', 'Bonn', '7000.00', 1, '98120421', 'stefanhummer@beispielfirma.de', '1986-01-01'),
(4, 'Gerhard', 'David', 'Nibelungenstraße 21', '52115', 'Bonn', '2500.00', 2, '67294738', 'dave.g@beispielfirma.de', '1986-01-01'),
(5, 'Weinert', 'Eduard', 'Quellenweg 57', '53177', 'Bonn', '2000.00', 2, '78646193', 'eduard.weinert@beispielfirma.de', '1986-01-01'),
(6, 'Michaels', 'Connie', 'Benedek Straße 5', '53756', 'St. Augustin', '2500.00', 3, '12345655', 'connie.michaels@beispielfirma.de', '1986-01-01'),
(7, 'Osser', 'Bernd', 'Usambaraweg 28', '50732', 'Köln', '2200.00', 3, '27913020', 'b.osser@beispielfirma.de', '1986-01-01'),
(8, 'Koppes', 'Karin', 'Kopenhagener Straße 34', '53177', 'Bonn', '2400.00', 4, '98766754', 'karin.koppes@beispielfirma.de', '1986-01-01'),
(9, 'Wilding', 'Alexander', 'Sedanstraße 172', '53229', 'Bonn', '2300.00', 4, '28652947', 'alex.wilding@beispielfirma.de', '1986-01-01'),
(10, 'Schmidt', 'Peter', 'Konrad-Adenauer-Straße 49', '50997', 'Köln', '2500.00', 5, '68371020', 'p.schmidt@beispielfirma.de', '1986-01-01'),
(11, 'Müller', 'Ole', 'Lutherstraße 4', '50823', 'Köln', '2600.00', 5, '682037741', 'o.mueller@beispielfirma.de', '1986-01-01'),
(12, 'Meier', 'Wilhelm', 'Römerstraße 53', '53229', 'Bonn', '2400.00', 5, '91821573', 'willi.meier@beispielfirma.de', '1986-01-01'),
(13, 'Schiff', 'Martin', 'Truchseßstraße 74', '53127', 'Bonn', '2500.00', 5, '65744583', 'martin.schiff@beispielfirma.de', '1986-01-01'),
(14, 'Lehne', 'Luise', 'Lyngsbergstraße 93', '53113', 'Bonn', '2000.00', 6, '12341756', 'luise.lehne@beispielfirma.de', '1986-01-01'),
(15, 'Remsen', 'Kevin', 'Nonnenstrombergstraße 22', '50672', 'Köln', '1800.00', 6, '94128882', 'kevin.remsen@beispielfirma.de', '1986-01-01');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `mwstsatz`
--
CREATE TABLE `mwstsatz` (
`MWSTNR` int(11) NOT NULL,
`PROZENT` decimal(4,2) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Daten für Tabelle `mwstsatz`
--
INSERT INTO `mwstsatz` (`MWSTNR`, `PROZENT`) VALUES
(1, '7.00'),
(2, '19.00');
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `posten`
--
CREATE TABLE `posten` (
`BESTELLNR` int(11) NOT NULL,
`ARTIKELNR` int(11) NOT NULL,
`BESTELLMENGE` int(11) DEFAULT NULL,
`LIEFERMENGE` int(11) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
--
-- Daten für Tabelle `posten`
--
INSERT INTO `posten` (`BESTELLNR`, `ARTIKELNR`, `BESTELLMENGE`, `LIEFERMENGE`) VALUES
(1, 1, 1, 1),
(1, 2, 1, 1),
(2, 34, 2, 2),
(3, 11, 1, 1),
(3, 20, 1, 1),
(4, 45, 1, 1),
(5, 19, 1, 1),
(6, 46, 2, 2),
(7, 8, 1, 1),
(7, 37, 1, 1),
(8, 12, 1, 1),
(9, 39, 1, 1),
(10, 25, 1, 1),
(10, 30, 1, 1),
(11, 20, 1, 1),
(12, 36, 1, 1),
(13, 41, 1, 1),
(13, 49, 1, 1),
(14, 6, 3, 3),
(15, 36, 1, 1),
(16, 21, 4, 4),
(17, 34, 1, 1),
(18, 34, 1, 1),
(19, 41, 1, 1),
(20, 17, 1, 1),
(21, 2, 3, 3),
(22, 19, 1, 1),
(23, 32, 1, 1),
(24, 14, 2, 2),
(25, 28, 1, 1),
(26, 8, 1, 1),
(26, 21, 2, 2),
(27, 36, 1, 1),
(28, 40, 1, 1),
(29, 4, 1, 1),
(29, 27, 1, 1),
(29, 43, 1, 1),
(30, 28, 3, 3),
(31, 15, 1, 1),
(32, 18, 1, 1),
(33, 38, 2, 2),
(34, 4, 1, 1),
(35, 25, 1, 1),
(36, 6, 2, 2),
(36, 32, 1, 1),
(37, 19, 1, 1),
(38, 42, 1, 1),
(39, 3, 1, 1),
(39, 26, 1, 1),
(40, 17, 1, 1),
(41, 23, 1, 1),
(41, 45, 1, 1),
(42, 27, 2, 2),
(43, 18, 1, 1),
(44, 24, 1, 1),
(45, 7, 1, 1),
(46, 38, 1, 1),
(47, 21, 1, 1),
(49, 32, 1, 1),
(50, 16, 2, 2),
(51, 13, 1, 1),
(51, 47, 1, 1),
(52, 28, 3, 3),
(53, 34, 1, 1),
(54, 41, 1, 1),
(55, 14, 2, 2),
(56, 29, 1, 1),
(57, 1, 1, 1),
(58, 18, 1, 1),
(59, 32, 2, 2),
(60, 24, 1, 1),
(61, 30, 1, 1),
(61, 45, 1, 1),
(62, 11, 2, 2),
(62, 38, 1, 1),
(63, 4, 1, 1),
(64, 33, 1, 1),
(64, 42, 1, 1),
(65, 10, 1, 1),
(65, 44, 1, 1),
(66, 26, 1, 1),
(66, 36, 1, 1),
(66, 49, 2, 2),
(67, 27, 1, 1),
(67, 33, 1, 1),
(68, 13, 1, 1),
(69, 7, 3, 3),
(70, 18, 1, 1),
(70, 22, 1, 1),
(70, 50, 1, 1),
(71, 6, 1, 1),
(71, 28, 1, 1),
(72, 1, 2, 2),
(72, 6, 4, 4),
(72, 10, 1, 1),
(72, 11, 1, 1),
(72, 12, 2, 2),
(73, 4, 1, 1),
(73, 43, 1, 1),
(74, 3, 1, 1),
(74, 4, 1, 1),
(74, 7, 1, 1),
(74, 9, 1, 1),
(74, 11, 1, 1),
(74, 14, 1, 1),
(74, 17, 1, 1),
(74, 20, 1, 1),
(74, 22, 1, 1),
(74, 26, 1, 1),
(74, 29, 1, 1),
(74, 34, 1, 1),
(74, 37, 1, 1),
(74, 38, 1, 1),
(74, 41, 1, 1),
(74, 42, 1, 1),
(74, 43, 1, 1),
(74, 48, 1, 1),
(74, 50, 1, 1),
(75, 5, 1, 1),
(75, 8, 1, 1),
(75, 13, 1, 1),
(75, 23, 1, 1),
(75, 26, 1, 1),
(75, 33, 1, 1),
(75, 39, 1, 1),
(75, 42, 1, 1),
(75, 49, 1, 1),
(76, 3, 3, 3),
(76, 12, 1, 1),
(76, 24, 1, 1),
(76, 32, 1, 1),
(76, 45, 2, 2),
(77, 46, 10, 10),
(77, 47, 10, 10),
(77, 48, 10, 10),
(77, 49, 10, 10),
(77, 50, 10, 10),
(78, 9, 1, 1),
(78, 16, 1, 1),
(78, 22, 1, 1),
(78, 36, 1, 1),
(78, 43, 1, 1),
(79, 34, 1, 1),
(79, 41, 1, 1);
--
-- Indizes der exportierten Tabellen
--
--
-- Indizes für die Tabelle `abteilung`
--
ALTER TABLE `abteilung`
ADD PRIMARY KEY (`ABTEILUNGSNR`);
--
-- Indizes für die Tabelle `artikel`
--
ALTER TABLE `artikel`
ADD PRIMARY KEY (`ARTIKELNR`),
ADD KEY `HERSTELLER` (`HERSTELLER`),
ADD KEY `MWST` (`MWST`),
ADD KEY `KATEGORIE` (`KATEGORIE`);
--
-- Indizes für die Tabelle `bestellung`
--
ALTER TABLE `bestellung`
ADD PRIMARY KEY (`BESTELLNR`),
ADD KEY `KUNDENNR` (`KUNDENNR`);
--
-- Indizes für die Tabelle `hersteller`
--
ALTER TABLE `hersteller`
ADD PRIMARY KEY (`HERSTELLERNR`);
--
-- Indizes für die Tabelle `jobticket`
--
ALTER TABLE `jobticket`
ADD PRIMARY KEY (`ID`),
ADD KEY `MITARBEITERNR` (`MITARBEITERNR`),
ADD KEY `BESTELLNR` (`BESTELLNR`);
--
-- Indizes für die Tabelle `kategorie`
--
ALTER TABLE `kategorie`
ADD PRIMARY KEY (`KATEGORIENR`);
--
-- Indizes für die Tabelle `kunde`
--
ALTER TABLE `kunde`
ADD PRIMARY KEY (`KUNDENNR`);
--
-- Indizes für die Tabelle `mitarbeiter`
--
ALTER TABLE `mitarbeiter`
ADD PRIMARY KEY (`MITARBEITERNR`),
ADD KEY `ABTEILUNG` (`ABTEILUNG`);
--
-- Indizes für die Tabelle `mwstsatz`
--
ALTER TABLE `mwstsatz`
ADD PRIMARY KEY (`MWSTNR`);
--
-- Indizes für die Tabelle `posten`
--
ALTER TABLE `posten`
ADD PRIMARY KEY (`BESTELLNR`,`ARTIKELNR`),
ADD KEY `ARTIKELNR` (`ARTIKELNR`);
--
-- Constraints der exportierten Tabellen
--
--
-- Constraints der Tabelle `artikel`
--
ALTER TABLE `artikel`
ADD CONSTRAINT `artikel_ibfk_1` FOREIGN KEY (`HERSTELLER`) REFERENCES `hersteller` (`herstellernr`),
ADD CONSTRAINT `artikel_ibfk_2` FOREIGN KEY (`MWST`) REFERENCES `mwstsatz` (`mwstnr`),
ADD CONSTRAINT `artikel_ibfk_3` FOREIGN KEY (`KATEGORIE`) REFERENCES `kategorie` (`kategorienr`);
--
-- Constraints der Tabelle `bestellung`
--
ALTER TABLE `bestellung`
ADD CONSTRAINT `bestellung_ibfk_1` FOREIGN KEY (`KUNDENNR`) REFERENCES `kunde` (`kundennr`);
--
-- Constraints der Tabelle `jobticket`
--
ALTER TABLE `jobticket`
ADD CONSTRAINT `jobticket_ibfk_1` FOREIGN KEY (`MITARBEITERNR`) REFERENCES `mitarbeiter` (`mitarbeiternr`),
ADD CONSTRAINT `jobticket_ibfk_2` FOREIGN KEY (`BESTELLNR`) REFERENCES `bestellung` (`BESTELLNR`);
--
-- Constraints der Tabelle `mitarbeiter`
--
ALTER TABLE `mitarbeiter`
ADD CONSTRAINT `mitarbeiter_ibfk_1` FOREIGN KEY (`ABTEILUNG`) REFERENCES `abteilung` (`ABTEILUNGSNR`);
--
-- Constraints der Tabelle `posten`
--
ALTER TABLE `posten`
ADD CONSTRAINT `posten_ibfk_1` FOREIGN KEY (`ARTIKELNR`) REFERENCES `artikel` (`ARTIKELNR`),
ADD CONSTRAINT `posten_ibfk_2` FOREIGN KEY (`BESTELLNR`) REFERENCES `bestellung` (`BESTELLNR`);
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;