Aktuell im Unterricht

Wir nutzen den Trainingsbereich des Jugendwettbewerbs Informatik für das selbständige Erlernen des Programmierens.
Dies wird vorwiegend als Hausaufgabe geschehen. Jede Woche mindestens 10 Minuten Training im Bereich Python ist Pflicht.
Fragen werden gern im Unterricht behandelt, wenn diese per E-Mail an mich gestellt werden.

Hier geht es mit deiner persönlichen Anmeldung zum JW Informatik - Trainingsbereich.

Datenbanken mit SQL

  1. SQL-Quiz
    Lehrer: Sigismund
    Bei Vorname und Nachname die entsprechenden Teile aus deiner Lernsax-E-Mail-Adresse eintragen.
    Nutze auch unseren Trainingsbereich SQL-Island auf mrge.de

  2. Begriffsklärung
  3. SQL Island - Text-Adventure-Lernspiel für die Datenbanksprache SQL
    - Spielstände können nicht gespeichert werden.
    - Im Spiel wirst du nach deinem Namen gefragt. Verwende deinen Vor- und Zunamen.
    - Zum Spielende gibt es ein Zertifikat, welches nur auf deinen Vor- und Zunamen ausgestellt von mir akzeptiert wird.
    - Erstelle in Lernsax einer Datei SQL-Island.docx und speichere darin alle deine korrekten Eingaben im Adventure SQL Island.
  4. SQL Island Trainingsbereich auf mrge.de mit Aufgaben
    Beispiele:
    select * from dorf 
    			
  5. SQL-Tutorial - Lichtenbergschule Darmstadt
    1. Lektion 1: Einfache SELECT-Anweisungen mit der Datenbank WMTitel und die Übungen zur Lektion 1 mit der Datenbank cia
      • select distinct region from cia order by 1 desc limit 0,3
      • select bip/einwohner*1000 as "spez. BIP" from cia
               where BIP not between 100000000 and 10E9 and bip<>0
      • select * from cia where name like "_r%"
      • select name, einwohner from cia
               where name in ("Deutschland","Frankreich","USA") order by einwohner,name
      • select name, einwohner/flaeche as "a" from cia
               where region ="Südamerika" or region ="Nordamerika" order by "a"
    2. Lektion 2: Die Aggregatfunktionen erläutert an der Datenbank WMTitel und die Übungen mit der Datenbank cia
      • select count(*),max(bip),min(bip),sum(bip), avg(bip) from cia
      • select name, max(bip), min(bip) from cia
      • select name, bip, max(bip) from cia
    3. Lektion 3: Verbinden von Tabellen einer Datenbank (JOIN)
      • SELECT Kategoriename, Artikelname FROM Artikel
               INNER JOIN Kategorien ON Artikel.KategorieNr = Kategorien.KategorieNr
      • SELECT Kategoriename, Artikelname FROM Artikel, Kategorien
               WHERE Artikel.KategorieNr = Kategorien.KategorieNr
      • SELECT Artikelname FROM Kategorien, Artikel
               WHERE Kategorien.KategorieNr = Artikel.KategorieNr AND Kategorien.Kategoriename = "Getränke" ORDER BY 1
      • SELECT DISTINCT Artikelname, Nachname, Vorname
              FROM Kategorien, Artikel, Bestelldetails, Bestellungen, Personal
              WHERE Kategorien.KategorieNr = Artikel.KategorieNr
                    AND Artikel.ArtikelNr = Bestelldetails.ArtikelNr
                    AND Bestelldetails.BestellNr = Bestellungen.BestellNr
                    AND Bestellungen.PersonalNr = Personal.PersonalNr
                    AND Kategorien.Kategoriename = "Getränke"
                    AND Nachname="King"
    4. MC-Test: SQL-Abfragen - Datenbank WMTitel (4 Aufgaben): Zum Kennen lernen / LK
    5. English4SQL - part 1 / English4SQL
    6. Lückentext "Syntax der Select-Anweisung"
    7. Kopiere die folgenden SQL-Anweisungen jeweils in ein Worddokument.
      Markiere die von dir erkannten Fehler und beseitige diese in einer Kopie der SQL-Anweisung.
      Teste die Richtigkeit im SQL Trainingsbereich mit Datenbank < sql-island.sql.
      Welche Aufgabe(n) sollte diese SQL-Anweisung ausführen.
       1. select dorf.name, count(*) from dorf, bewohner 
      		where dorf.bewohnernr=bewohner.dorfnr order by dorf.name
      
       2. select dorfname, nachname, dorfnummer from dorf, bewohner 
      		where dorfname="Affendorf"
      
       3. select gegenstand, name form bewohner, gegenstand where bewohner.bewohnernr = gegenstand.bewohnernr
       
       4. select name from bewohner where dorfname=Affendorf ordet by name descend
       
       5. select gegenstand from gegenstand where dorfname=Affendorf
       
       6. select bewohnernr form bewohner where "freidlich"
       
       7. select name, dorf from bewohner where bewohner="böse"
       
       8.  select bewohner.name, dorfname from bewohner,dorf
         		where bewohner.dorfnr = dorf.dorfnr 
      			and bewohner.nr in (select bewohner.nr from bewohner, gegenstand
         									where bewohner.nr=besitzer)
       
      
    8. SQL Island im Trainingsbereich auf mrge.de
      select * from dorf 
      select bewohnernr, name from  bewohner order by name limit 5
      select name, status from bewohner where status="friedlich" or status="gefangen" order by 2
      select name, status from bewohner where status in ("friedlich", "gefangen") order by name
      select distinct status from bewohner
      
      select status from bewohner
      select count(status) from bewohner
      select distinct status from bewohner
      select count(distinct status) from bewohner
      select status, count(*) from bewohner group by status
      
      select name, gold from bewohner where gold>500 order by gold
      select name, gold from bewohner where not gold>500 order by gold
      select name, gold from bewohner where gold>500 and gold<1000 order by gold
      select name, gold from bewohner where not gold>500 and gold<1000 order by gold
      select name, gold from bewohner where not (gold>500 and gold<1000) order by gold
      select name, gold from bewohner where gold>500 or gold<1000 order by gold
      select name, gold from bewohner where gold<500 or gold>1000 order by gold
      select name, gold from bewohner where not (gold<500 or gold>1000) order by gold
      select name, gold from bewohner where gold between 510 and 990 order by gold
      
      
      select bewohner.name as "Besitzer", gegenstand.name as "Gegenstand" 
         from bewohner , gegenstand 
         where bewohnernr=besitzer
      select bewohner.name as "Besitzer", gegenstand.name as "Gegenstand", dorf.name 
         from dorf, bewohner, gegenstand
         where dorf.dorfnr=bewohner.dorfnr and bewohnernr=besitzer
           and status="friedlich"
      
      select dorf.name, count(*) from dorf, bewohner 
        where dorf.dorfnr=bewohner.dorfnr
      select dorf.name, count(*) from dorf, bewohner 
        where dorf.dorfnr=bewohner.dorfnr group by dorf.dorfnr
      select dorf.name,status, count(*) from dorf, bewohner 
        where dorf.dorfnr=bewohner.dorfnr 
        group by dorf.dorfnr, status
      
      select distinct round(gold/100) from bewohner
      select round(gold/100) as bereich, count(*)  from bewohner 
        group by bereich
      select round(gold/500) as bereich, round(gold/500)*500 as "von"," - ", count(*)  
        from bewohner 
        group by bereich
       
    9. WM Titel
      - ER-Diagramm und Info zur Datenbank
      select * from wmtitel
      
      select Saison, Fahrerweltmeister, Konstrukteurswm from wmtitel		
      			
      select Saison, Fahrerweltmeister, Konstrukteurswm
        from wmtitel
        where Fahrerweltmeister = 'Michael Schumacher'
      
      select Fahrerweltmeister, WM_Punkte
        from wmtitel
        where WM_Punkte >= 100			
        
      select Saison, Fahrerweltmeister, WM_Punkte
        from wmtitel
        where Fahrerweltmeister = 'Michael Schumacher'
          and WM_Punkte > 100
      
      select Saison, Fahrerweltmeister, WM_Punkte
        from wmtitel
        where WM_Punkte between 80 and 110
      
      select Saison, KonstrukteursWM
        from WMTitel
        where KonstrukteursWM like '%Renault%'	
      
      select Saison, Fahrerweltmeister
        from wmtitel
        where Fahrerweltmeister in ('Ayrton Senna', 'Alain Prost', 'Damon Hill')
        
      select distinct Fahrerweltmeister from wmtitel  
      
      select count(Fahrerweltmeister) from wmtitel  
      
      select count(distinct Fahrerweltmeister) from wmtitel  
      
      			
      - MC-Test: SQL-Abfragen - Datenbank WMTitel (4 Aufgaben)

    10. SQL Tutorial auf der E-Learning-Webseite W3Schools
    11. DB Fiddle - SQL Database Playground
      SQL Island als geteiltes Projekt
    12. sql-island.sql
    13. SQL Island in der Informatik Wiki | SQL Island - Lösungen>

    14. www.monst-er.de --->