Coding Club for girls
Home
Zusätzliche Herausforderungen

Zusätzliche Herausforderungen

NOT eine normale Umfrage

Für eine Umfrage müsstest du alle Kreaturen auflisten, die Federn haben.

Alle Kreaturen bei denen die Spalte Federn_Kreatur ? ist, haben keine Federn. Das wollen wir eben nicht!

Um etwas zu filtern, das wir nicht wollen, können wir die Verneinung verwenden: NOT ("nicht" auf Deutsch) vor der Bedingung.

Profi-Tipp

Anstatt auf "Run" zu klicken, kannst du [Shift⇧]+[Enter↵] auf deiner Tastatur drücken, um deinen Befehl auszuführen.

I LIKE SQL

Du hast sicherlich bemerkt, dass du sehr präzise sein musst, wenn du spezifische Daten suchst, mit dem Zeichen =. Zum Beispiel, ... WHERE Name = "Minerva McGonagall" AND .... Aber wenn du nur einen Teil einer Information kennst, kannst du LIKE verwenden. Das ermöglicht es, nach Text zu suchen, der in der Tabelle enthalten ist.

Wir können eine Bedingung erstellen, indem wir = durch LIKE ersetzen und den Text, den wir suchen möchten, zwischen "%...%" platzieren.

Relationale Datenbanken

Der wirkliche Vorteil bei der Verwendung einer Datenbank ist, dass du diese Tabellen miteinander verknüpfen kannst! Erinnere dich an das Schema, das wir zuvor gesehen haben:

Man könnte zum Beispiel alle Zauberer sehen wollen, die ein ein Patronus mit spezielle Eigenschaften haben. Die Eigenschaften von Kreaturen sind jedoch nicht in derselben Tabelle wie die Namen der Zauberer. Die folgende Abfrage kann daher nicht funktionieren.

SELECT Name FROM Charakter WHERE NOT Eigenschaften_Kreatur = '?'

Die Eigenschaften von Kreaturen befindet sich in der Tabelle Kreaturen. Du musst also diese beiden Tabellen mit dem Befehl JOIN verbinden. Zum Beispiel, wenn Harry Potter ein Patronus “Hirsch” hat, möchten wir, dass alle Informationen zum Hirsch zur Tabelle Charakter hinzugefügt werden. Dafür könnten wir etwas schreiben wie:

Wähle alle Attribute von Charaktere aus, und füge die Tabelle Kreaturem hinzu, sodass du der Patronus des Charakters mit dem Namen der Kreatur vergleichst.

In vereinfachter Form erhalten wir:

WÄHLE * VON Charaktere FÜGE Kreaturen HINZU DAMIT Charaktere.Patronus=Kreaturen.Name_Kreatur

Im Englischen übersetzen wir:

SELECT * FROM Charaktere JOIN Kreaturen ON Charaktere.Patronus=Kreaturen.Name_Kreatur

Du kannst es jetzt selbst ausprobieren.