Was ist SQL (Structured Query Language)?
SQL ist eine Sprache.
Damit kann man mit Datenbanken kommunizieren: z. B. Daten abfragen, einfügen, ändern oder löschen.
SQL ist ein Standard, den viele Datenbanksysteme unterstützen.
Wie lässt man eine Datenbank anzeigen?
Wie erstellt, öffnet und löscht man sie?
SHOW DATABASE;
SHOW DATEBASE zoo
CREATE DATABASE;
CREATE DATEBASE zoo
USE Datenbankename;
USE zoo
DROP DATABASE;
DROP DATEBASE zoo
Mit welchen Befehl lässt man eine Tabelle anzeigen?
Mit welchen eine Tabellenstruktur?
Wie legt man eine Tabelle an ?
Und wie löscht man eine Tabelle?
SHOW TABLES FROM dantenbankname
DESCRIBE Tabellenname oder DESC Tabellenname
CREATE TABLE Tabellenname (
Feldname_1 Datentyp,
Feldname_2 Datentyp,
Feldname_n Datentyp ;)
DROP TABLE Tabellenname;
Mit welchen Befehl trägt man Werte ein?
INSERT INTO tabellenname
(feld_1, feld_2, ..., feld_n)
VALUES
(wert_1, wert_2, ..., wert_n);
INSERT INTO personen (name, alter)
VALUES ('Anna', 25);
Wie lässt man sich einfach Werte anzeigen?
SELECT *
FROM zoo (Tabellenname)
Was ist MySQL?
MySQL ist ein konkretes Datenbankmanagementsystem (DBMS).
Es verwendet SQL als Sprache, um mit der Datenbank zu arbeiten.
MySQL ist also ein Programm, das deine Daten speichert, verwaltet und bereitstellt.
Es ist eines der am weitesten verbreiteten relationalen Datenbanksysteme (besonders bei Webseiten).
Was ist ein Datentyp?
Ein Datentyp bestimmt, welche Art von Werten in einem bestimmten Feld einer Tabelle gespeichert werden dürfen.
Beispiele:
Ein Name ist Text
Ein Alter ist eine ganze Zahl
Ein Preis ist eine Kommazahl
Ein „ja/nein“-Feld ist logisch (true/false)
Was bedeutet CHAR?
Es wird genau x Zeichen gespeichert (z. B. CHAR(5) → genau 5 Zeichen).
Speicherplatz: 1 Zeichen = 1 Byte (bei einfachen Zeichensätzen).
Maximal 255 Zeichen möglich.
Was bedeutet VARCHAR(x)?
Speichert variabel lange Texte (also: nicht immer gleich lang)
Belegt nur so viel Speicherplatz wie nötig
Gut für Namen, Diagnosen, Medikamentennamen usw.
Wenn x ≤ 255 → 1 zusätzliches Byte wird gespeichert (für die Länge)
Wenn x > 255 → 2 zusätzliche By
Was ist BINARY(x)?
Speichert genau x Bytes – aber als Binärdaten
Wird z. B. für Bilder, Dateien, Hashes (z. B. MD5) verwendet
Unterschied zu VARCHAR/CHAR: keine normale Textverarbeitung – Daten werden als Byte-Werte gespeichert
Was ist der Datentyp VARBINARY(x)?
VAR = „variable Länge“
BINARY = „binäre Daten“ (also Rohdaten, keine normalen Buchstaben oder Zeichen)
Vorteil: schneller und flexibeler
Was macht DISTINCT?
DISTINCT
sorgt dafür, dass doppelte Werte NICHT mehrfach angezeigt werden
SELECT DISTINCT stadt FROM kunden;
Was bedeutet COUT(x)?
COUNT zählt, wie viele Zeilen (Datensätze) es gibt,
die zu einer bestimmten Abfrage passen
SELECT COUNT(*) FROM tabelle;
zählt alle Zeilen der Tabelle egal was drinn stehet
SELECT COUNT(name) FROM kunden;
Zählt alle Zeilen die ein Wert beeinhalten
SELECT COUNT(DISTINCT stadt) FROM kunden;
Was bedeutet LIKE?
LIKE wird verwendet, um nach Mustern in Texten zu suchen
SELECT name FROM kunden
WHERE name LIKE 'An%';
alles was mit An anfängt wird angezeigt
WHERE name LIKE '_nna'
für ein einzelnes Zeichen
Was machtt GROUP BY?
GROUP BY wird verwendet, um Daten nach gemeinsamen Werten zu gruppieren
und zusammengefasste Berechnungen zu machen, wie z. B.:
Wie viele Kunden gibt es pro Stadt?
Wie viele Bestellungen hat jeder Kunde gemacht?
Wie viel Umsatz wurde pro Monat erzielt?
SELECT kunde, kategorie, SUM(betrag) AS gesamtbetrag
FROM bestellungen
GROUP BY kunde, kategorie;
Was bedeutet HAVING?
Damit kannst du gefilterte Gruppenergebnisse anzeigen,
also z. B.:
„Zeig mir nur Kunden, die mehr als 500 € bestellt haben.“
SELECT kunde, SUM(betrag) AS gesamtbetrag
GROUP BY kunde
HAVING SUM(betrag) > 500;
WHERE kannst du nur für normale Spalten benutzen (z. B. betrag, kunde, kategorie),
HAVING brauchst du, wenn du mit Zusammenfassungen arbeitest – also mit:
SUM(...)
AVG(...)
COUNT(...)
MAX(...)
MIN(...)
Waas bedeutet der Befehl DAYOFWEEK?
DAYOFWEEK(date) gibt dir zurück, welcher Wochentag ein bestimmtes Datum ist
Wochentag
1 -> Sonntag
2-> Montag
3-> Dienstag
4-> Mittwoch
5-> Donnerstag
6-> Freitag
7-> Samstag
SELECT DAYOFWEEK('2024-06-14')
Ergebnis = 6 -> Also Freitag
SELECT * FROM personen
WHERE DAYOFWEEK(geburtsdatum) = 2;
Ergebniss -> Alle die Montag geboren sind
Was macht ORDER BY?
ORDER BY sortiert die Ergebnisse einer Abfrage
also z. B. alphabetisch, nach Größe, nach Datum usw.
SELECT * FROM tabelle
ORDER BY spalte [ASC | DESC];
ASC -> Aufsteigend
DESC-> Absteigend
Was macht man mit AND und OR?
SELECT * FROM kunden
WHERE stadt = 'Berlin' AND land = 'DE';
Ergebniss -> Nur kunden die in Berlin und Deutschland leben
WHERE stadt = 'Berlin' OR land = 'DE';
Nur eins muss stimmen
Was bedeutet NOT NULL?
NOT NULL ist eigentlich eine Einschränkung beim Erstellen einer Tabelle –
aber du kannst auch in einer Abfrage danach filtern, ob ein Feld leer (NULL) oder nicht leer ist
Zuletzt geändertvor 15 Tagen