Projekt:2021/InstaHub2
Seite zum Projekt InstaHub des Informatik GK im Schuljahr 2021/22.
Lerntagebuch
- Starte das Programm Fork auf dem Rechner und vergleiche die Oberfläche mit dem bekannten GitHub Desktop. Als Hilfe kannst du dir erneut den Lernpfad:Einführung in Git ansehen. Er wurde auf Fork angepasst.
- Erstelle in Gitea einen Fork des Git-Repositories IF-GK-2021/lerntagebuch. Klone dann deinen neuen Fork mithilfe des Programms Fork.
- Erstelle dann einen ersten Eintrag im Lerntagebuch, indem du die Vorlage
_Vorlage.md
kopierst und bearbeitest. Bearbeite auch die DateiREADME.md
in deinem Lerntagebuch, um auf deinen ersten Eintrag zu verweisen. - Commite die Änderungen dann in dein Repository.
Einführung in SQL
Lernpfad SQL-Abfragen
Bearbeite den Lernpfad SQL-Abfragen. Erstelle am Ende der Stunde einen Eintrag im Lerntagebuch, um deine Fortschritte zu dokumentieren.
Bedingungen
Mittels der WHERE
-Klausel lassen sich Datensätze gezielt auf bestimmte Bedingungen einschränken. Jedes Datenfeld hat einen festgelegten Datentyp (im Wesentlichen Zahl, Text und Datum). Je nach Datentyp lassen sich unterschiedliche Bedingungen nutzen. Bedingungen sind entweder TRUE
oder FALSE
. Bedingungen können mit AND
OR
verknüpft, oder mit NOT
negiert werden.
Lies im Wikibook Einführung in SQL den Abschnitt WHERE-Klausel im Detail. Studiere vor allem die Vergleichsoperatoren und die Schlüsselwörter BETWEEN
, LIKE
und IS NULL
.
Entwirf dann Abfragen für folgende Datensätze:
- Alle Kommentare, die zwischen 2018-09-21 07:57:19 und 2018-09-21 09:57:19 erstellt wurden.
- Zehn Photos, deren Beschreibung
#sonne
,#strand
oder#meer
enthalten. - Alle Photos, deren URL
animals
enthält. - Alle Photos, deren URL nicht
animals
enthält. - Alle Nutzer, die aus Frankfurt oder Berlin kommen und zwischen 150 und 168 Zentimeter groß sind.
- Alle Nutzer, die keine Größe eingetragen haben.
Eine mächtige Bedingung ist das IN
Schlüsselwort. Mit ihm kann ein Wert mit einer ganzen Liste von Werten verglichen werden. Der Operator prüft also, ob ein Wert in einer Liste vorkommt, oder nicht.
Betrachte beispielsweise folgende Abfragen und vergleiche sie miteinander. Was fragen sie ab und wie ist der IN
Befehl aufgebaut?
SELECT * FROM users WHERE city = "Frankfurt" OR city = "Berlin" OR city = "Leipzig" OR city = "München"
SELECT * FROM users WHERE city IN ("Frankfurt","Berlin","Leipzig","München")
SELECT FROM users WHERE city NOT IN ("Frankfurt","Berlin","Leipzig","München")
Ergänze neue Befehle auf in deiner Befehlsübersicht.
Fortgeschrittene Aufgaben
Falls du aus dem letzten Jahr schon die Grundlagen der SQL kennst, dann kannst du dich mit diesen Aufgaben befassen.
- Gehe die Seiten Einfache SQL-Abfragen und SQL-Abfragen mit einer Tabelle durch, um dein Wissen über SQL-Abfragen aufzufrischen. Befasse dich vor allem noch einmal mit logischen Verknüpfungen und Aggregation von Daten. Eine Überischt der wichtigsten SQL-Befehle findest du hier im Wiki unter Befehlsreferenz SQL oder hier.
- Lies dich in den Aufbau der Tabelle
ads
ein und was ihre Funktion in InstaHub ist. Fange dazu auf der Seite Personalisierte Werbung in der InstaHub Dokumentation an. - Probiere die Beispiele unter https://wi-wissen.github.io/instahub-doc-de/#/exercices?id=tabelle-ads-werbung aus.
- Erstelle selber eine Werbeanzeige in InstaHub. Überlege dir eine Zielgruppe für die Anzeige und erstelle dann eine SQL-Abfrage, die diese Zielgruppe möglichst genau trifft.