PMG1617/DB Beleg/Richard
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>SQL</language>
== Das Datenbank-Projekt ==
'''Thema: Top 15 Börsennotierte Unternehmen in Deutschland '''
Das Ziel der Datenbank ist die Zuordnung der Top 15 Börsennotierte Unternehmen in Deutschland zu deren Standorten des Firmensitzes. Dadurch wird erkennbar gemacht, in welchen Gebieten sich am meisten Firmen ansiedeln. Dabei können Beziehungen zwischen des Sitz bestimmter Firmen/Branchen und den Standorten gemacht werden. Das Thema habe ich gewählt, um herauszufinden, ob die größten Firmen Deutschlands im gesamten Land verteilt sind oder nur in bestimmten Regionen zu finden sind.
== ERM ==
[[Bild:RPaufler_Unternehmen-3.jpeg | Miniatur| 1000px]]
== Das Relationenmodell ==
'''Unternehmen'''( Firmenname, Branche, Gewinn des Unternehmens, Ortsname, Zahl der Mitarbeiter)
- Firmenname ist Primärschlüssel, Ortsname der Fremdschlüssel
'''Standort des Firmensitzes'''( Ortsname, Bundesland, West/Ost, Stadt/Großstadt/Dorf)
- Ortsname ist Primärschlüssel
== Datenbank ==
<code id="5aa648935f113">
Create Table Unternehmen(
Firmenname integer,
Branche integer,
Gewinn_in_Mio decimal,
Zahl_der_Mitarbeiter decimal,
Ortsname integer);
Insert Into Unternehmen Values ('Volkswagen', 'Automobil', 21 , 549.000, 'Wolfsburg');
Insert Into Unternehmen Values ('Siemens', 'Technologie', 4 , 370.000, 'Berlin');
Insert Into Unternehmen Values ('Bayer', 'Gesundheit/Kosmetik', 2 , 110.000, 'Leverkusen');
Insert Into Unternehmen Values ('SAP', 'Technologie', 2 , 64.000, 'Walldorf');
Insert Into Unternehmen Values ('BASF', 'Chemie', 4 , 113.000, 'Ludwigshafen_am_Rhein');
Insert Into Unternehmen Values ('Daimler', 'Automobil', 6 , 275.000, 'Stuttgart');
Insert Into Unternehmen Values ('Allianz', 'Finanzen', 5 , 144.000, 'München');
Insert Into Unternehmen Values ('BMW', 'Automobil', 5 , 105.000, 'München');
Insert Into Unternehmen Values ('Deutsche_Telekom', 'Telekommunikation', -5.25 , 232.000, 'Bonn');
Insert Into Unternehmen Values ('Deutsche_Bank', 'Finanzen', 0.23 , 98.000, 'Frankfurt_am_Main');
Insert Into Unternehmen Values ('Henkel', 'Konsumgüter', 1.51 , 46.000, 'Düsseldorf');
Insert Into Unternehmen Values ('Merck', 'Gesundheit_Kosmetik', 0.56 , 38.000, 'Darmstadt');
Insert Into Unternehmen Values ('Münchner_Rück', 'Versicherung', 3.1 , 45.000, 'München');
Insert Into Unternehmen Values ('Linde', 'Chemie', 1.25 , 62.000, 'München');
Insert Into Unternehmen Values ('Audi', 'Automobil', 4.28 , 67.000, 'Ingolstadt');
</code>
<run id="5aa648935f182">
SELECT * FROM Unternehmen;
</run>
<code id="5ab8a2a309094">
Create Table Standort(
Ortsname integer,
West_Ost integer,
Bundesland integer,
Kleinstadt_Großstadt_Dorf integer);
Insert Into Standort Values ('Wolfsburg', 'West','Niedersachsen','Großstadt');
Insert Into Standort Values ('Berlin', 'Ost','Berlin','Großstadt');
Insert Into Standort Values ('Leverkusen', 'West','Nordrhein_Westfalen','Großstadt');
Insert Into Standort Values ('Walldorf', 'West','Baden_Württemberg','Kleinstadt');
Insert Into Standort Values ('Ludwigshafen_am_Rhein', 'West','Rheinland_Pfalz','Großstadt');
Insert Into Standort Values ('Stuttgart', 'West','Baden_Württemberg','Großstadt');
Insert Into Standort Values ('München', 'West','Bayern','Großstadt');
Insert Into Standort Values ('Bonn', 'West','Nordrhein_Westfalen','Großstadt');
Insert Into Standort Values ('Frankfurt_am_Main', 'West','Hessen','Großstadt');
Insert Into Standort Values ('Düsseldorf', 'West','Nordrhein_Westfalen','Großstadt');
Insert Into Standort Values ('Darmstadt', 'West','Hessen','Großstadt');
Insert Into Standort Values ('Ingolstadt', 'West','Bayern','Großstadt');
</code>
<run id="5ab8a2a30913f">
SELECT * FROM Standort;
</run>
== verschiedenen Abfragen ==
'''Welche Firma hat die meisten Angestellten? (leicht)'''
<run id="5ab8af8baca87">
SELECT * FROM Unternehmen
WHERE Zahl_der_Mitarbeiter =(SELECT MAX(Zahl_der_Mitarbeiter) FROM Unternehmen As A);
</run>
'''Welche Firma macht den meisten Gewinn? (leicht)'''
<run id="5ab8b4a62d31a">
SELECT * FROM Unternehmen
WHERE Gewinn_in_Mio =(SELECT MAX(Gewinn_in_Mio) FROM Unternehmen As A);
</run>
'''Welche Firmen sind im Westen angesiedelt? (schwer)'''
<run id="5ab8b4a62d3a5">
SELECT Firmenname, Unternehmen.Ortsname, West_Ost
FROM Unternehmen INNER JOIN Standort ON Unternehmen.Ortsname = Standort.Ortsname
WHERE West_Ost like 'West';
</run>
== Kritische Reflexion zu Modellierung und Umsetzung ==
Durch die Modelierung der Datenbank konnte ich nützliche Erfahrungen zum Thema sammeln.
Besonders die Komplexität einer Datenbank habe ich am Anfang unterschätzt, weshalb ich die Top 25 leider zu den Top 15 verringern musste.
== Quelle ==
https://www.readsmarter.de/boerse/top-100-unternehmen-in-deutschland/