schule:sql_island_adventure
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende Überarbeitung | |||
schule:sql_island_adventure [2016-05-01 21:18] – [Die ersten Runden...] Komplettlösung marco.bakera | schule:sql_island_adventure [2017-04-19 08:39] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== SQL Island Adventure ====== | ||
+ | |||
+ | Hier sind die ersten Schritte für das "SQL Island Adventure" | ||
+ | |||
+ | ===== Die ersten Runden... ===== | ||
+ | < | ||
+ | |||
+ | Nach einem Flugzeugabsturz stellst du fest, dass du der einzige Überlebende bist. | ||
+ | Du landest auf einer Insel, erkundest sie und findest einige Dörfer: | ||
+ | > SELECT * FROM dorf | ||
+ | dorfnr name haeuptling | ||
+ | 1 Affenstadt 1 | ||
+ | 2 Gurkendorf 6 | ||
+ | 3 Zwiebelhausen 13 | ||
+ | Weiter | ||
+ | |||
+ | Du triffst während deiner Erkundung auf viele Bewohner der Insel. Welche? | ||
+ | |||
+ | > select * from bewohner; | ||
+ | bewohnernr name dorfnr geschlecht beruf gold status | ||
+ | 1 Paul Backmann 2 m Baecker 850 friedlich | ||
+ | 2 Ernst Peng 3 m Waffenschmied 280 friedlich | ||
+ | 3 Rita Ochse 1 w Baecker 350 friedlich | ||
+ | 4 Carl Ochse 1 m Kaufmann 250 friedlich | ||
+ | 5 Dirty Dieter 3 m Schmied 650 boese | ||
+ | 6 Gerd Schlachter 2 m Metzger 4850 boese | ||
+ | 7 Peter Schlachter 3 m Metzger 3250 boese | ||
+ | 8 Arthur Schneiderpaule 2 m Pilot 490 gefangen | ||
+ | 9 Tanja Trommler 1 w Baecker 550 boese | ||
+ | 10 Peter Trommler 1 m Schmied 600 friedlich | ||
+ | 11 Dirty Doerthe 3 w Erntehelfer 10 boese | ||
+ | 12 Otto Armleuchter 2 m Haendler 680 friedlich | ||
+ | 13 Fritz Dichter 2 m Hoerbuchautor 420 friedlich | ||
+ | 14 Enrico Zimmermann 2 m Waffenschmied 510 boese | ||
+ | 15 Helga Rasenkopf 2 w Haendler 680 friedlich | ||
+ | 16 Irene Hutmacher 1 w Haendler 770 boese | ||
+ | 17 Erich Rasenkopf 3 m Metzger 990 friedlich | ||
+ | 18 Rudolf Gaul 3 m Hufschmied 390 friedlich | ||
+ | 19 Anna Flysh 2 w Metzger 2280 friedlich | ||
+ | Yeah! | ||
+ | |||
+ | Deine Erkundung hat dich hungrig gemacht. Lass uns eine Metzgerei suchen | ||
+ | und eine Gratis-Wurstscheibe schnorren! | ||
+ | > SELECT * FROM bewohner WHERE beruf = ' | ||
+ | bewohnernr name dorfnr geschlecht beruf gold status | ||
+ | 6 Gerd Schlachter 2 m Metzger 4850 boese | ||
+ | 7 Peter Schlachter 3 m Metzger 3250 boese | ||
+ | 17 Erich Rasenkopf 3 m Metzger 990 friedlich | ||
+ | 19 Anna Flysh 2 w Metzger 2280 friedlich | ||
+ | Weiter | ||
+ | |||
+ | Juhu, Erich gibt uns eine Scheibe Wurst! Bei deiner weiteren Reise solltest | ||
+ | du jedoch beachten, dass nicht alle Bewohner friedlich sind. Da du nicht | ||
+ | bewaffnet bist, solltest du dich zunächst von den bösen Bewohnern fernhalten. | ||
+ | Welche Bewohner sind friedlich? | ||
+ | |||
+ | > select * from bewohner where status=" | ||
+ | bewohnernr name dorfnr geschlecht beruf gold status | ||
+ | 1 Paul Backmann 2 m Baecker 850 friedlich | ||
+ | 2 Ernst Peng 3 m Waffenschmied 280 friedlich | ||
+ | 3 Rita Ochse 1 w Baecker 350 friedlich | ||
+ | 4 Carl Ochse 1 m Kaufmann 250 friedlich | ||
+ | 10 Peter Trommler 1 m Schmied 600 friedlich | ||
+ | 12 Otto Armleuchter 2 m Haendler 680 friedlich | ||
+ | 13 Fritz Dichter 2 m Hoerbuchautor 420 friedlich | ||
+ | 15 Helga Rasenkopf 2 w Haendler 680 friedlich | ||
+ | 17 Erich Rasenkopf 3 m Metzger 990 friedlich | ||
+ | 18 Rudolf Gaul 3 m Hufschmied 390 friedlich | ||
+ | 19 Anna Flysh 2 w Metzger 2280 friedlich | ||
+ | Yeah! | ||
+ | |||
+ | Sehr gut! Nun suche dir einen friedlichen Waffenschmied, | ||
+ | Schwert schmieden kann. | ||
+ | (Hinweis: Bedingungen im WHERE-Teil kannst du mit AND verknüpfen) | ||
+ | |||
+ | > select * from bewohner where status=" | ||
+ | bewohnernr name dorfnr geschlecht beruf gold status | ||
+ | 2 Ernst Peng 3 m Waffenschmied 280 friedlich | ||
+ | Yeah! | ||
+ | |||
+ | Hm, das sind sehr wenige. Vielleicht gibt es noch andere Schmiede, | ||
+ | z.B. Hufschmied, Schmied, Waffenschmied, | ||
+ | um alle Bewohner zu finden, deren Beruf mit ' | ||
+ | (% ist ein Platzhalter für beliebig viele Zeichen). | ||
+ | |||
+ | > select * from bewohner where status=" | ||
+ | bewohnernr name dorfnr geschlecht beruf gold status | ||
+ | 2 Ernst Peng 3 m Waffenschmied 280 friedlich | ||
+ | 10 Peter Trommler 1 m Schmied 600 friedlich | ||
+ | 18 Rudolf Gaul 3 m Hufschmied 390 friedlich | ||
+ | Yeah! | ||
+ | |||
+ | Sehr gut! Diese Schmiede kommen alle in Frage. Du gehst sie nacheinader besuchen, | ||
+ | um sie zu fragen, ob sie dir ein Schwert schmieden können. | ||
+ | Während deiner Erkundungstour triffst du auf Paul, einen Bürgermeister. Er trägt | ||
+ | dich als Bewohner in sein Dorf ein. Da er dich nicht nach deinem Namen gefragt hat, | ||
+ | nennt er dich " | ||
+ | > INSERT INTO bewohner (name, dorfnr, geschlecht, beruf, gold, status) VALUES (' | ||
+ | OK Weiter | ||
+ | |||
+ | Finde deine bewohnernr heraus! (Tipp: Der * in den vorherigen Abfragen stand | ||
+ | immer für "alle Spalten" | ||
+ | mit Komma getrennte Spaltennamen angeben. | ||
+ | |||
+ | > select bewohnernr from bewohner where name=" | ||
+ | bewohnernr | ||
+ | 20 | ||
+ | Yeah! | ||
+ | |||
+ | Nun besuchst du einen der Schmiede, die du dir rausgesucht hast. Er sagt dir, | ||
+ | dass ein Schwert 150 Gold kostet. Wie viel Gold hast du momentan? | ||
+ | |||
+ | > select gold from bewohner where bewohnernr=20; | ||
+ | gold | ||
+ | 0 | ||
+ | Yeah! | ||
+ | |||
+ | Mist! Um an Gold zu kommen, müsstest du arbeiten... Obwohl! Man erzählt sich, | ||
+ | dass auf der Insel viele Gegenstände herumliegen, | ||
+ | Diese Gegenstände kannst du einsammeln und an Händler verkaufen. Liste alle | ||
+ | Gegenstände auf, die niemandem gehören. | ||
+ | Tipp: Herrenlose Gegenstände erkennt man an WHERE besitzer IS NULL. | ||
+ | |||
+ | > select * from gegenstand where besitzer is NULL; | ||
+ | gegenstand besitzer | ||
+ | Teekanne | ||
+ | Ring | ||
+ | Kaffeetasse | ||
+ | Eimer | ||
+ | Pappkarton | ||
+ | Gluehbirne | ||
+ | Yeah! | ||
+ | |||
+ | Lasst uns die Kaffeetasse einsammeln. Eine Kaffeetasse kann | ||
+ | man immer mal gebrauchen. | ||
+ | > UPDATE gegenstand SET besitzer = 20 WHERE gegenstand = ' | ||
+ | OK Weiter | ||
+ | |||
+ | Kennst du einen Trick, wie wir alle Gegenstände auf einmal einsammeln | ||
+ | können, die niemandem gehören? | ||
+ | |||
+ | > update gegenstand set besitzer=20 where besitzer is NULL; | ||
+ | OKYeah! | ||
+ | |||
+ | Yeah! Zeige mir nun alle Gegenstände, | ||
+ | |||
+ | > select * from gegenstand where besitzer=20; | ||
+ | gegenstand besitzer | ||
+ | Teekanne 20 | ||
+ | Ring 20 | ||
+ | Kaffeetasse 20 | ||
+ | Eimer 20 | ||
+ | Pappkarton 20 | ||
+ | Gluehbirne 20 | ||
+ | Yeah! | ||
+ | |||
+ | Finde friedliche Bewohner mit dem Beruf Haendler oder Kaufmann. | ||
+ | Eventuell möchten sie etwas von uns kaufen. (Hinweis: Achte | ||
+ | bei AND- und OR-Verknüpfungen auf korrekte Klammerung) | ||
+ | |||
+ | </ | ||
+ | |||
+ | Wie geht die Geschichte weiter?... | ||
+ | |||
+ | [[privat: | ||
+ | ===== Inhalte der Tabellen ===== | ||
+ | |||
+ | Die Inhalte der Tabellen. | ||
+ | |||
+ | < | ||
+ | DORF (dorfnr, name, haeuptling) | ||
+ | BEWOHNER (bewohnernr, | ||
+ | GEGENSTAND (gegenstand, | ||
+ | |||
+ | > SELECT * FROM dorf | ||
+ | |||
+ | dorfnr name haeuptling | ||
+ | 1 Affenstadt 1 | ||
+ | 2 Gurkendorf 6 | ||
+ | 3 Zwiebelhausen 13 | ||
+ | |||
+ | > SELECT * FROM bewohner | ||
+ | bewohnernr name dorfnr geschlecht beruf gold status | ||
+ | 1 Paul Backmann 2 m Baecker 850 friedlich | ||
+ | 2 Ernst Peng 3 m Waffenschmied 280 friedlich | ||
+ | 3 Rita Ochse 1 w Baecker 350 friedlich | ||
+ | 4 Carl Ochse 1 m Kaufmann 250 friedlich | ||
+ | 5 Dirty Dieter 3 m Schmied 650 boese | ||
+ | 6 Gerd Schlachter 2 m Metzger 4850 boese | ||
+ | 7 Peter Schlachter 3 m Metzger 3250 boese | ||
+ | 8 Arthur Schneiderpaule 2 m Pilot 490 gefangen | ||
+ | 9 Tanja Trommler 1 w Baecker 550 boese | ||
+ | 10 Peter Trommler 1 m Schmied 600 friedlich | ||
+ | 11 Dirty Doerthe 3 w Erntehelfer 10 boese | ||
+ | 12 Otto Armleuchter 2 m Haendler 680 friedlich | ||
+ | 13 Fritz Dichter 2 m Hoerbuchautor 420 friedlich | ||
+ | 14 Enrico Zimmermann 2 m Waffenschmied 510 boese | ||
+ | 15 Helga Rasenkopf 2 w Haendler 680 friedlich | ||
+ | 16 Irene Hutmacher 1 w Haendler 770 boese | ||
+ | 17 Erich Rasenkopf 3 m Metzger 990 friedlich | ||
+ | 18 Rudolf Gaul 3 m Hufschmied 390 friedlich | ||
+ | 19 Anna Flysh 2 w Metzger 2280 friedlich | ||
+ | |||
+ | > SELECT * FROM gegenstand | ||
+ | gegenstand besitzer | ||
+ | Teekanne | ||
+ | Spazierstock 5 | ||
+ | Hammer 2 | ||
+ | Ring | ||
+ | Kaffeetasse | ||
+ | Eimer | ||
+ | Seil 17 | ||
+ | Pappkarton | ||
+ | Gluehbirne | ||
+ | |||
+ | </ | ||
schule/sql_island_adventure.txt · Zuletzt geändert: 2017-04-19 08:39 von 127.0.0.1