SQL-Spickzettel mit Befehlen und DescriptIon (2026)

โšก Intelligente Zusammenfassung

Dieses SQL-Spickzettel enthรคlt die Befehle, die Entwickler tรคglich verwenden, รผbersichtlich nach Aufgaben geordnet. Jeder Abschnitt kombiniert die exakte Syntax mit einer einfachen Beschreibung und behandelt Datenbankerstellung, Datentypen, Abfragen, Filtern, Verknรผpfen und Indizierung.

  • ๐Ÿ—„๏ธ Strukturbefehle: CREATE DATABASE, CREATE TABLE, ALTER, RENAME und DROP definieren und verรคndern das Schema.
  • ๐Ÿ”ข Datentypen: Numerische, Text-, Datums- und Binรคrdatentypen legen die SpeichergrรถรŸe und den gรผltigen Bereich jeder Spalte fest.
  • ๐Ÿ”Ž Abrufbefehle: Mit SELECT und den Operatoren WHERE, IN, LIKE und REGEXP lรคsst sich das Ergebnis auf die relevanten Zeilen beschrรคnken.
  • โœ๏ธ ร„nderungsbefehle: INSERT, UPDATE und DELETE รคndern gespeicherte Zeilen und akzeptieren jeweils eine optionale Bedingung.
  • ๐Ÿ“Š Aggregationsbefehle: Gruppieren nach mit ANZAHL, MIN, MAX, SUMME und AVG fasst Daten zusammen, und HAVING filtert die Gruppen.
  • ๐Ÿ”— Kombinationsbefehle: JOIN verknรผpft Tabellen nebeneinander, wรคhrend UNION die Ergebnisse zweier Abfragen รผbereinanderstapelt.

SQL-Spickzettel

Erstellen Sie Datenbank- und Tabellenbefehle

Jede SQL-Sitzung beginnt mit einer Datenbank und mindestens einer Tabelle zur Speicherung der Zeilen.

Befehl Beschreibung
CREATE DATABASE database1; Datenbank erstellen
CREATE DATABASE IF NOT EXISTS database1; IF NOT EXISTS ermรถglicht Ihnen, Anweisungen zu geben. MySQL Der Server soll vor dem Erstellen der Datenbank prรผfen, ob bereits eine Datenbank mit einem รคhnlichen Namen existiert.
CREATE DATABASE IF NOT EXISTS database1 CHARACTER SET latin1 COLLATE latin1_swedish_ci; Der Zeichensatz latin1 verwendet die Sortierung latin1_swedish_ci, die der schwedischen, nicht zwischen GroรŸ- und Kleinschreibung unterscheidenden Sortierung entspricht.
SHOW DATABASES; Sie kรถnnen eine Liste der vorhandenen Datenbanken anzeigen, indem Sie diesen SQL-Befehl ausfรผhren.
CREATE TABLE [IF NOT EXISTS] TableName (fieldname dataType [optional parameters]) ENGINE = storage Engine; Tabellensyntax erstellen

Spickzettel fรผr SQL-Datentypen

Der Datentyp einer Spalte legt fest, was sie speichern kann und wie viel Speicherplatz jede Zeile benรถtigt.

Numerische Datentypen

Befehl Beschreibung
TINYINT( ) -128 bis 127 normal, 0 bis 255 vorzeichenlos.
SMALLINT( ) -32768 bis 32767 normal
0 bis 65535 UNSIGNED.
MEDIUMINT( ) -8388608 bis 8388607 normal
0 bis 16777215 UNSIGNED.
INT( ) -2147483648 bis 2147483647 normal
0 bis 4294967295 UNSIGNED.
BIGINT( ) -9223372036854775808 bis 9223372036854775807 normal
0 bis 18446744073709551615 UNSIGNED.
FLOAT Eine kleine ungefรคhre Zahl mit einem Gleitkomma.
DOUBLE( , ) Eine groรŸe, ungefรคhre Zahl mit Gleitkommazahl.
DECIMAL( , ) Eine exakte Festkommazahl. Die bevorzugte Wahl zur Speicherung von Wรคhrungswerten.

Textdatentypen

Befehl Beschreibung
CHAR( ) Ein Abschnitt mit fester Lรคnge von 0 bis 255 Zeichen.
VARCHAR( ) Ein Abschnitt variabler Lรคnge von 0 bis 65535 Zeichen.
TINYTEXT Eine Zeichenfolge mit einer maximalen Lรคnge von 255 Zeichen.
TEXT Eine Zeichenfolge mit einer maximalen Lรคnge von 65535 Zeichen.
BLOB Binรคrdaten mit einer maximalen Lรคnge von 65535 Bytes.
MEDIUMTEXT Eine Zeichenfolge mit einer maximalen Lรคnge von 16777215 Zeichen.
MEDIUMBLOB Binรคrdaten mit einer maximalen Lรคnge von 16777215 Bytes.
LONGTEXT Eine Zeichenfolge mit einer maximalen Lรคnge von 4294967295 Zeichen.
LONGBLOB Binรคrdaten mit einer maximalen Lรคnge von 4294967295 Bytes.

Datums-/Uhrzeitdatentypen

Befehl Beschreibung
DATE YYYY-MM-DD
DATETIME JJJJ-MM-TT HH: MM: SS
TIMESTAMP YYYY-MM-DD HH:MM:SS, gespeichert in UTC und in die Sitzungszeitzone konvertiert.
TIME HH: MM: SS

Andere Datentypen

Befehl Beschreibung
ENUM Um einen aus einer Liste vordefinierter Textwerte ausgewรคhlten Textwert zu speichern.
SET Dies dient auch zum Speichern von Textwerten, die aus einer Liste vordefinierter Textwerte ausgewรคhlt werden. Es kann mehrere Werte aufnehmen.
BOOL Synonym fรผr TINYINT(1), wird zum Speichern von booleschen Werten verwendet.
BINARY ร„hnlich wie CHAR; der Unterschied besteht darin, dass der Text im Binรคrformat gespeichert wird.
VARBINARY ร„hnlich wie bei VARCHAR; der Unterschied besteht darin, dass der Text im Binรคrformat gespeichert wird.

SQL SELECT-Anweisungsbefehl

SELECT ist der Befehl, mit dem Zeilen aus einer Tabelle ausgelesen werden.

Befehl Beschreibung
SELECT * FROM table1; Wรคhlen Sie alle Spalten der Tabelle aus.
SELECT t1, t2, t3, t4 FROM table1; Wir sind nur an den Feldern t1, t2, t3 und t4 interessiert.
SELECT CONCAT(t1, ' (', t3, ')'), t4 FROM table2; Zusammenfรผhren von Spaltenwerten zu einer einzigen Ausgabespalte
SELECT column_name | value | expression [AS] alias_name; Syntax fรผr Aliasfeldnamen

SQL WHERE-Klausel mit AND-, OR-, IN-, NOT IN-Befehlen

Die WHERE-Klausel filtert Zeilen, und die folgenden Operatoren kรถnnen darin kombiniert werden.

Befehl Beschreibung
SELECT * FROM tableName WHERE condition; Syntax der WHERE-Klausel
SELECT * FROM table1 WHERE t1 = 2 AND t2 = 2008; Die WHERE-Klausel wurde mit dem logischen AND-Operator kombiniert.
SELECT * FROM table1 WHERE t1 = 1 OR t1 = 2; WHERE-Klausel kombiniert mit dem logischen OR-Operator
SELECT * FROM table2 WHERE t1 IN (1,2,3); Die WHERE-Klausel wurde mit dem IN-Schlรผsselwort kombiniert.
SELECT * FROM table2 WHERE t1 NOT IN (1,2,3); Die WHERE-Klausel wurde mit dem Schlรผsselwort NOT IN kombiniert.
SELECT * FROM table2 WHERE t3 = 'Female'; Die WHERE-Klausel wurde mit dem Gleichheitsoperator (=) kombiniert.
SELECT * FROM table3 WHERE t3 > 2000; Die WHERE-Klausel wurde mit dem Vergleichsoperator โ€žgrรถรŸer alsโ€œ (>) kombiniert.
SELECT * FROM table1 WHERE t1 <> 1; Die WHERE-Klausel wurde mit dem Vergleichsoperator โ€žungleichโ€œ (<>) kombiniert.

SQL-Befehl INSERT INTO Table

Befehl Beschreibung
INSERT INTO table_name(column_1, column_2, ...) VALUES (value_1, value_2, ...); Grundlegende Syntax des SQL-Befehls INSERT
INSERT INTO table1 (t1,t2,t3,t4) VALUES (X1,X2,X3,X4); Daten in eine Tabelle einfรผgen
INSERT INTO table_1 SELECT * FROM table_2; Einfรผgen von Daten aus einer anderen Tabelle in eine Tabelle

SQL DELETE-Befehl

Befehl Beschreibung
DELETE FROM table_name [WHERE condition]; Lรถschen Sie eine Zeile in MySQL

SQL-Update-Befehl

Befehl Beschreibung
UPDATE table_name SET column_name = new_value [WHERE condition]; Syntax des Aktualisierungsbefehls

ORDER BY in SQL: DESC- und ASC-Befehl

Befehl Beschreibung
SELECT statement... [WHERE condition | GROUP BY field_name(s) HAVING condition] ORDER BY field_name(s) [ASC | DESC]; Grundlegende Syntax der ORDER BY-Klausel
SELECT {fieldName(s) | *} FROM tableName(s) [WHERE condition] ORDER BY fieldname(s) ASC | DESC [LIMIT N]; DESC- und ASC-Syntax

SQL-Befehl โ€žGROUP BYโ€œ und โ€žHAVINGโ€œ-Klausel

GRUPPIERE NACH Die Funktion HAVING fasst Zeilen zu Gruppen zusammen und filtert diese Gruppen anschlieรŸend.

Gruppiere nach

Befehl Beschreibung
SELECT statements... GROUP BY column_name1[, column_name2, ...] [HAVING condition]; GROUP BY Syntax

Grouping und Aggregatfunktionen

Befehl Beschreibung
SELECT t2, COUNT(t1) FROM table1 GROUP BY t2; Angenommen, wir mรถchten die Gesamtzahl der t2-Spaltenwerte in unserer Datenbank.

HAVING-Klausel

Befehl Beschreibung
SELECT * FROM table2 GROUP BY t1_id, t4 HAVING t1_id = x1; Gibt alle t4-Werte fรผr die Zeilen in Tabelle 2 zurรผck, deren t1_id x1 ist.

SQL-Platzhalterbefehle fรผr Like, NOT Like, Escape, ( % ), ( _ )

Platzhalter ermรถglichen es LIKE, auch Teilzeichenketten abzugleichen.

% der Prozentzeichenbefehl in MySQL

Befehl Beschreibung
SELECT statements... WHERE fieldname LIKE 'xxx%'; Grundlegende Syntax fรผr das Prozentzeichen (%), das fรผr eine beliebige Anzahl von Zeichen steht.

_ Unterstrich-Platzhalterbefehl

Befehl Beschreibung
SELECT * FROM table1 WHERE t3 LIKE 'x2_'; Der Unterstrich entspricht genau einem Zeichen.

NICHT wie ein Platzhalterbefehl

Befehl Beschreibung
SELECT * FROM table1 WHERE t3 NOT LIKE 'x2_'; Angenommen, wir mรถchten die Zeilen aus Tabelle 1, deren t3-Wert nicht dem Muster entspricht.

Platzhalterbefehl fรผr Escape-Schlรผsselwort

Befehl Beschreibung
LIKE '67#%' ESCAPE '#'; Prรผft auf die Zeichenkette โ€ž67%โ€œ, da # das Wildcard-Zeichen maskiert.

Regulรคre SQL-Ausdrรผcke (REGEXP)

Befehl Beschreibung
SELECT statements... WHERE fieldname REGEXP 'pattern'; Grundlegende Syntax einer regulรคren Ausdrucksรผbereinstimmung

Metazeichen fรผr regulรคre Ausdrรผcke

Befehl Beschreibung
* Das Sternchen (*) als Metazeichen entspricht null oder mehreren Vorkommen der vorhergehenden Zeichenkette.
+ Das Metazeichen Plus (+) entspricht einem oder mehreren Vorkommen der vorhergehenden Zeichenkette.
? Das Fragezeichen (?) entspricht null oder einem Vorkommen der vorhergehenden Zeichenkette.
. Das Metazeichen Punkt (.) entspricht jedem einzelnen Zeichen auรŸer einem Zeilenumbruch.
[abc] Die Zeichenliste [abc] entspricht jedem der eingeschlossenen Zeichen.
[^abc] Die Zeichenliste [^abc] entspricht allen Zeichen auรŸer den eingeschlossenen.
[A-Z] Der Bereich [AZ] entspricht jedem GroรŸbuchstaben.
[a-z] Der Bereich [az] entspricht jedem Kleinbuchstaben.
[0-9] Der Bereich [0-9] entspricht jeder Ziffer von 0 bis 9.
^ Das Caret-Zeichen (^) verankert das Spiel am Anfang.
| Der senkrechte Strich (|) trennt Alternativen voneinander.
[[:<:]] Das Zeichen [[:<:]] steht fรผr den Wortanfang.
[[:>:]] Das Zeichen [[:>:]] steht fรผr das Ende von Wรถrtern.
[:class:] Der Marker [:class:] entspricht einer Zeichenklasse, zum Beispiel [:alpha:] fรผr Buchstaben, [:space:] fรผr Leerzeichen, [:punct:] fรผr Satzzeichen und [:upper:] fรผr GroรŸbuchstaben.

SQL-Funktionsbefehle

String-Funktionen

Befehl Beschreibung
SELECT t1_id, t2, UCASE(t2) FROM table1; Die UCASE-Funktion nimmt eine Zeichenkette als Parameter und wandelt alle Buchstaben in GroรŸbuchstaben um.

Numerische Funktionen

Befehl Beschreibung Beispiel
DIV Ganzzahlige Division SELECT 23 DIV 6;
/ Anwendungen SELECT 23 / 6;
- SubtracProduktion SELECT 23 - 6;
+ Zusatz SELECT 23 + 6;
* Vervielfรคltigen SELECT 23 * 6 AS multiplication_result;
% or MOD Modul SELECT 23 % 6; or SELECT 23 MOD 6;
FLOOR Entfernt die Dezimalstellen einer Zahl und rundet sie auf die nรคchste ganze Zahl ab. SELECT FLOOR(23 / 6) AS floor_result;
ROUND Rundet eine Zahl mit Dezimalstellen auf die nรคchste ganze Zahl. SELECT ROUND(23 / 6) AS round_result;

Gespeicherte Funktionen

Befehl Beschreibung
CREATE FUNCTION sf_name ([parameter(s)]) Pflicht. Sagt MySQL Der Server soll eine Funktion namens sf_name mit den in Klammern definierten optionalen Parametern erstellen.
RETURNS data type Erforderlich. Gibt den Datentyp an, den die Funktion zurรผckgibt.
DETERMINISTIC Die Funktion gibt immer denselben Wert zurรผck, wenn ihr dieselben Argumente รผbergeben werden.
STATEMENTS Der prozedurale Code, den die Funktion ausfรผhrt.

Befehle der SQL-Aggregatfunktion

Befehl Beschreibung
SELECT COUNT(t1_id) FROM table1 WHERE t1_id = 2; COUNT-Funktion
SELECT MIN(t3) FROM table2; MIN-Funktion
SELECT MAX(t3) FROM table2; MAX-Funktion
SELECT SUM(t4) FROM table3; SUMME-Funktion
SELECT AVG(t4) FROM table3; AVG Funktion

SQL IS NULL- und IS NOT NULL-Befehle

A NULL Da es sich um einen fehlenden Wert handelt, muss er mit IS NULL und nicht mit dem Gleichheitsoperator geprรผft werden.

Befehl Beschreibung
SELECT COUNT(t3) FROM table1; COUNT ignoriert NULL-Werte in der Spalte.
CREATE TABLE table2(
t1_number int NOT NULL,
t2_names varchar(255),
t3 varchar(6)
);
NOT NULL verbietet leere Werte in einer Spalte.
column_name IS NULL
column_name IS NOT NULL
NULL-Schlรผsselwรถrter โ€“ grundlegende Syntax
SELECT * FROM table1 WHERE t2_number IS NULL; Beispiel fรผr IS NULL
SELECT * FROM table1 WHERE t2_number IS NOT NULL; Beispiel fรผr IS NOT NULL

SQL AUTO_INCREMENT-Befehle

Befehl Beschreibung
CREATE TABLE table1 (
t1_id int(11) AUTO_INCREMENT,
t2_name varchar(150) DEFAULT NULL,
t3 varchar(500) DEFAULT NULL,
PRIMARY KEY (t1_id)
);
Syntax fรผr die automatische Inkrementierung

SQL โ€“ ALTER, DROP, RENAME, MODIFY

Diese Befehle verรคndern eine Tabelle, die bereits Daten enthรคlt.

Befehl Beschreibung
ALTER TABLE table_name ADD COLUMN column_name data_type; ALTER-Syntax
DROP TABLE sample_table; DROP TABLE-Syntax
RENAME TABLE current_table_name TO new_table_name; Syntax des RENAME-Befehls
ALTER TABLE table1 CHANGE COLUMN t1_names t1name char(250) NOT NULL; Schlรผsselwort รคndern
ALTER TABLE table1 MODIFY t1name char(50) NOT NULL; Schlรผsselwort MODIFY
ALTER TABLE table1 ADD t4 date NULL AFTER t3; NACH dem Schlรผsselwort

SQL-LIMIT & OFFSET

Befehl Beschreibung
SELECT {fieldname(s) | *} FROM tableName(s) [WHERE condition] LIMIT N; LIMIT-Schlรผsselwortsyntax
SELECT * FROM table1 LIMIT 1, 2; Offset in der LIMIT-Abfrage: 1 Zeile รผberspringen, dann 2 zurรผckgeben.

SQL-Unterabfragebefehle

Befehl Beschreibung
SELECT t1_name FROM table1 WHERE
category_id = (SELECT MIN(t1_id) FROM table2);
Unterabfragen

SQL JOINS-Befehle

VERBINDET Spalten aus zwei Tabellen werden zu einem Ergebnissatz kombiniert.

Befehl Beschreibung
SELECT * FROM table1 CROSS JOIN table2; Kreuz JOIN
SELECT table1.t1, table1.t2, table2.t1
FROM table1, table2
WHERE table2.id = table1.table2_id;
INNER JOIN
SELECT A.t1, B.t2, B.t3
FROM table2 AS A
LEFT JOIN table1 AS B
ON B.table2_id = A.id;
LEFT JOIN
SELECT A.t1, A.t2, B.t3
FROM table1 AS A
RIGHT JOIN table2 AS B
ON B.id = A.table2_id;
RICHTIG BEITRETEN
SELECT A.t1, B.t2, B.t3
FROM table2 AS A
LEFT JOIN table1 AS B
USING (table2_id);
โ€žONโ€œ- und โ€žUSINGโ€œ-Klauseln

SQL UNION-Befehle

UNION stapelt die Zeilen zweier Abfragen, wรคhrend JOIN sie in mehr Spalten aufteilt.

Befehl Beschreibung
SELECT column1, column2 FROM table1
UNION
SELECT column1, column2 FROM table2;
UNION-Syntax. Doppelte Zeilen werden entfernt.
SELECT column1, column2 FROM table1
UNION ALL
SELECT column1, column2 FROM table2;
UNION ALL behรคlt doppelte Zeilen bei.

SQL in Views-Befehlen

Aufrufe Eine Abfrage wird unter einem Namen gespeichert, sodass sie wie eine Tabelle wiederverwendet werden kann.

Befehl Beschreibung
CREATE VIEW view_name AS SELECT statement; Syntax der Ansichten
DROP VIEW general_v_movie_rentals; Dropping Ansichten

SQL-Indexbefehle

Ein Index ist eine Suchstruktur, die die Suche in einer Spalte erheblich beschleunigt.

Befehl Beschreibung
CREATE INDEX id_index ON table_name(column_name); Fรผgen Sie die grundlegende Indexsyntax hinzu
DROP INDEX index_id ON table_name; Grundlegende Syntax zum Lรถschen des Index

Hรคufig gestellte Fragen

Nein. Schlรผsselwรถrter wie SELECT und WHERE funktionieren in jedem Fall. GroรŸschreibung ist eine Konvention, um Befehle von Bezeichnern zu trennen. Tabellennamen kรถnnen unter Linux jedoch zwischen GroรŸ- und Kleinschreibung unterscheiden.

DELETE entfernt ausgewรคhlte Zeilen und kann rรผckgรคngig gemacht werden. TRUNCATE leert die gesamte Tabelle schnell und setzt AUTO_INCREMENT zurรผck. DROP lรถscht die Tabellendefinition selbst.

FROM und JOIN werden zuerst ausgefรผhrt, dann WHERE, GROUP BY, HAVING, SELECT, ORDER BY und schlieรŸlich LIMIT. Daher kann ein in SELECT definierter Spaltenalias nicht innerhalb von WHERE verwendet werden.

Ja. Text-zu-SQL-Assistenten รผbersetzen eine Frage mithilfe des Tabellenschemas in eine Abfrage. Lesen Sie immer die generierten WHERE- und JOIN-Bedingungen, da eine plausible Abfrage falsche Zeilen zurรผckgeben kann.

Ja. RevDas Betrachten von KI-Ausgaben, das Optimieren langsamer Abfragen und das Lesen eines Ausfรผhrungsplans erfordern allesamt flieรŸende Kenntnisse der Befehle. Ein Referenzblatt beschleunigt das Erinnern; es ersetzt jedoch nicht das Verstรคndnis.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: