Projekt:2021/InstaHub: Unterschied zwischen den Versionen

4.262 Bytes hinzugefügt ,  20:51, 24. Aug. 2021
keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
= Projekt InstaHub =
== Projekt InstaHub ==


{{Aufgabe:Start}}
{{Aufgabe:Start}}
Zeile 32: Zeile 32:
Denk dir weitere Abfragen aus, mit der du die Syntax des <code>SELECT</code>-Befehls ausprobieren kannst.
Denk dir weitere Abfragen aus, mit der du die Syntax des <code>SELECT</code>-Befehls ausprobieren kannst.


{{Aufgabe:End}}
{{Aufgabe:Start}}
<code>SELECT</code> Abfragen lassen sich mit den Schlüsselwörtern <code>LIMIT</code>, <code>OFFSET</code>, <code>ORDER BY</code> und <code>DISTINCT</code> weiter präzisieren.
* Führe die Abfragen aus und analysiere die Funktion und Syntax der <code>LIMIT</code> und <code>OFFSET</code> Schlüsselwörter.
*# <code>SELECT * FROM users LIMIT 5</code>
*# <code>SELECT * FROM users LIMIT 10</code>
*# <code>SELECT * FROM users LIMIT 5 OFFSET 5</code>
* Führe die Abfragen aus und analysiere die Funktion und Syntax des <code>ORDER BY</code> Schlüsselwortes.
*# <code>SELECT id,username,height FROM users</code>
*# <code>SELECT id,username,height FROM users ORDER BY id</code>
*# <code>SELECT id,username,height FROM users ORDER BY username</code>
*# <code>SELECT id,username,height FROM users ORDER BY height</code>
*# <code>SELECT id,username,height FROM users ORDER BY height ASC</code>
*# <code>SELECT id,username,height FROM users ORDER BY height DESC</code>
* Führe die Abfragen aus und analysiere die Funktion und Syntax des <code>DISTINCT</code> Schlüsselwortes.
*# <code>SELECT city FROM users</code>
*# <code>SELECT DISTINCT city FROM users</code>
* Kombiniere nun die neuen Schlüsselwörter miteinander und entwickele Abfragen zu folgenden Datensätzen:
** Die fünf größten männlichen Nutzer.
** Die acht kleinsten weiblichen Nutzer, beginnend ab der Drittkleinsten.
** 15 unterschiedliche aufsteigend sortierte Vornamen.
** Das zuletzt gepostete Photo.
** Das vorletzte Photo.
{{Aufgabe:End}}
{{Aufgabe:Start}}
* Mittels der <code>WHERE</code>-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 sixh unterschiedliche Bedingungen nutzen. Bedingungen sind entweder <code>TRUE</code> oder <code>FALSE</code>. Bedingungen können mit <code>AND</code> <code>OR</code> verknüpft, oder mit <code>NOT</code> negiert werden.
Lies im [https://de.wikibooks.org/wiki/Einf%C3%BChrung_in_SQL:_WHERE-Klausel_im_Detail Wikibook Einführung in SQL] den Abschnitt [https://de.wikibooks.org/wiki/Einf%C3%BChrung_in_SQL:_WHERE-Klausel_im_Detail WHERE-Klausel im Detail]. Studiere vor allem die Operatoren <code>BETWEEN</code>, <code>CONTAINS</code> und <code>IS NULL</code>.
Entwirf dann Abfragen für folgende Datensätze:
# Alle Kommentare, die zwischen erstellt wurden.
# Zehn Photos, deren Beschreibung <code>#sonne</code>, <code>#strand</code> oder <code>#meer</code> enthalten.
# Alle Photos, die als Bildformat png haben.
# Alle Nutzer, die aus Frankfurt oder Stuttgart kommen und zwischen 120 und 133 Zentimeter groß sind.
{{Aufgabe:End}}
{{Aufgabe:Start}}
Lege dir auf einem Blatt ein Tabelle im unten gezeigten Format an. Trage links die bisher kennengelernten Schlüsselwörter ein und rechts daneben eine kurze Beschreibung der Funktion.
{| {{prettytable}}
! SQL-Befehl
! Bedeutung
|-
| SELECT
| Fragt Datensätze nach bestimmten Kriterien aus der Datenbank ab.
|}
{{Aufgabe:End}}
=== Funktionen ===
{{Aufgabe:Start}}
SQL bietet auch Möglichkeiten, die abgefragten Datensätze durxh die Anwendung von Rechenoperationen und Funktionen zu ''transformieren''.
Um zum Beispiel die Größe der Nutzer nicht in Zentimetern, sondern in Millimetern abzufragen, könnte die Abfrage so lauten:
<code>SELECT username, height*10 FROM users</code>
Einen Überblick der wichtigsten Funktionen gibt es in der [[Befehlsreferenz SQL#Funktionen nutzen]]. Analysiere mit ihrer folgende Abfragen und notiere ihre Bedeutung, ohne sie vorher auszuführen. Prüfe dann deine Vermutung in Instahub.
# <code>SELECT COUNT(*) FROM comments</code>
# <code>SELECT MIN(height), MAX(height),AVG(height),SUM(height) FROM users</code>
# <code>SELECT height+100,4+3,AVG(height)*2,id%2 FROM users</code>
# <code>SELECT CONCAT(),UPPER(username), LOWER(city) FROM users</code>
# <code>SELECT CONCAT(first," ",last),UPPER(username), LOWER(city) FROM users</code>
# <code>SELECT DAY(created_at),MONTH(created_at),YEAR(created_at) FROM users LIMIT 1 ORDER BY created_at DESC</code>
# <code>SELECT CONCAT(first," ", UPPER(last)," (",UPPER(LEFT(3,city)),")") FROM users</code>
{{Aufgabe:End}}
{{Aufgabe:End}}


[[Kategorie:Projekte:2021/22]]
[[Kategorie:Projekte:2021/22]]
8.581

Bearbeitungen