SQL-spiekbriefje met opdrachten en Description (2026)

โšก Slimme samenvatting

Deze SQL-spiekbrief verzamelt de commando's die een professionele ontwikkelaar dagelijks gebruikt, gerangschikt per taak. Elke sectie combineert de exacte syntax met een eenvoudige beschrijving en behandelt onderwerpen zoals het aanmaken van databases, gegevenstypen, query's, filteren, joins en indexeren.

  • ๏ธ Structuuropdrachten: Met CREATE DATABASE, CREATE TABLE, ALTER, RENAME en DROP kunnen het schema worden gedefinieerd en aangepast.
  • ๐Ÿ”ข Gegevenstypen: Numerieke, tekst-, datum- en binaire gegevenstypen bepalen de opslaggrootte en het geldige bereik van elke kolom.
  • ๐Ÿ”Ž Ophaalopdrachten: SELECT met WHERE, IN, LIKE en REGEXP beperkt de resultaten tot de rijen die ertoe doen.
  • โœ๏ธ Wijzigingsopdrachten: INSERT, UPDATE en DELETE wijzigen opgeslagen rijen en accepteren elk een optionele voorwaarde.
  • ๐Ÿ“Š Aggregatieopdrachten: GROUP BY met COUNT, MIN, MAX, SUM en AVG vat de gegevens samen en HAVING filtert de groepen.
  • ๐Ÿ”— Combinatiecommando's: JOIN voegt tabellen naast elkaar samen, terwijl UNION de resultaten van twee query's stapelt.

SQL-spiekbriefje

Database- en tabelopdrachten maken

Elke SQL-sessie begint met een database en minstens รฉรฉn tabel om de rijen in op te slaan.

commando Beschrijving
CREATE DATABASE database1; Maak een database
CREATE DATABASE IF NOT EXISTS database1; Met IF NOT EXISTS kunt u instructies geven MySQL De server controleert of er al een database met een vergelijkbare naam bestaat voordat de database wordt aangemaakt.
CREATE DATABASE IF NOT EXISTS database1 CHARACTER SET latin1 COLLATE latin1_swedish_ci; De latin1-tekenset gebruikt de latin1_swedish_ci-sortering, wat de Zweedse sortering zonder rekening te houden met hoofdletters en kleine letters is.
SHOW DATABASES; Je kunt een lijst met bestaande databases bekijken door dit SQL-commando uit te voeren.
CREATE TABLE [IF NOT EXISTS] TableName (fieldname dataType [optional parameters]) ENGINE = storage Engine; Tabelsyntaxis maken

Cheatsheet voor SQL-gegevenstypen

Het gegevenstype van een kolom bepaalt wat erin kan worden opgeslagen en hoeveel ruimte elke rij in beslag neemt.

Numerieke gegevenstypen

commando Beschrijving
TINYINT( ) -128 tot 127 normaal, 0 tot 255 ONGETEKEND.
SMALLINT( ) -32768 tot 32767 normaal
0 tot 65535 NIET ONDERTEKEND.
MEDIUMINT( ) -8388608 tot 8388607 normaal
0 tot 16777215 NIET ONDERTEKEND.
INT( ) -2147483648 tot 2147483647 normaal
0 tot 4294967295 NIET ONDERTEKEND.
BIGINT( ) -9223372036854775808 tot 9223372036854775807 normaal
0 tot 18446744073709551615 NIET ONDERTEKEND.
FLOAT Een klein getal bij benadering met een zwevende komma.
DOUBLE( , ) Een groot, bij benadering getal met een zwevende komma.
DECIMAL( , ) Een exact vastkommagetal. De voorkeurmethode voor het opslaan van valutawaarden.

Typen tekstgegevens

commando Beschrijving
CHAR( ) Een gedeelte met een vaste lengte van 0 tot 255 tekens.
VARCHAR( ) Een sectie met variabele lengte, van 0 tot 65535 tekens.
TINYTEXT Een tekenreeks met een maximale lengte van 255 tekens.
TEXT Een tekenreeks met een maximale lengte van 65535 tekens.
BLOB Binaire gegevens met een maximale lengte van 65535 bytes.
MEDIUMTEXT Een tekenreeks met een maximale lengte van 16777215 tekens.
MEDIUMBLOB Binaire gegevens met een maximale lengte van 16777215 bytes.
LONGTEXT Een tekenreeks met een maximale lengte van 4294967295 tekens.
LONGBLOB Binaire gegevens met een maximale lengte van 4294967295 bytes.

Datum-/tijdgegevenstypen

commando Beschrijving
DATE YYYY-MM-DD
DATETIME JJJJ-MM-DD UU:MM:SS
TIMESTAMP YJJJ-MM-DD HH:MM:SS, opgeslagen in UTC en geconverteerd naar de tijdzone van de sessie.
TIME HH: MM: SS

Andere gegevenstypen

commando Beschrijving
ENUM Om รฉรฉn tekstwaarde op te slaan, gekozen uit een lijst met vooraf gedefinieerde tekstwaarden.
SET Dit wordt ook gebruikt voor het opslaan van tekstwaarden die zijn gekozen uit een lijst met vooraf gedefinieerde tekstwaarden. Het kan meerdere waarden bevatten.
BOOL Synoniem voor TINYINT(1), gebruikt om Booleaanse waarden op te slaan.
BINARY Vergelijkbaar met CHAR; het verschil is dat tekst in binaire vorm wordt opgeslagen.
VARBINARY Vergelijkbaar met VARCHAR; het verschil is dat de tekst in binaire vorm wordt opgeslagen.

SQL SELECT-instructieopdracht

SELECT is het commando dat wordt gebruikt om rijen uit een tabel te lezen.

commando Beschrijving
SELECT * FROM table1; Selecteer alle kolommen uit de tabel.
SELECT t1, t2, t3, t4 FROM table1; We zijn alleen geรฏnteresseerd in de velden t1, t2, t3 en t4.
SELECT CONCAT(t1, ' (', t3, ')'), t4 FROM table2; Kolomwaarden samenvoegen tot รฉรฉn uitvoerkolom
SELECT column_name | value | expression [AS] alias_name; Syntaxis van aliasveldnamen

SQL WHERE-clausule met AND, OR, IN, NOT IN-opdrachten

De WHERE-clausule filtert rijen, en de onderstaande operatoren kunnen daarin worden gecombineerd.

commando Beschrijving
SELECT * FROM tableName WHERE condition; Syntaxis van de WHERE-clausule
SELECT * FROM table1 WHERE t1 = 2 AND t2 = 2008; De WHERE-clausule in combinatie met de logische AND-operator
SELECT * FROM table1 WHERE t1 = 1 OR t1 = 2; De WHERE-clausule in combinatie met de logische operator OR
SELECT * FROM table2 WHERE t1 IN (1,2,3); De WHERE-clausule in combinatie met het trefwoord IN
SELECT * FROM table2 WHERE t1 NOT IN (1,2,3); De WHERE-clausule in combinatie met het NOT IN-sleutelwoord
SELECT * FROM table2 WHERE t3 = 'Female'; De WHERE-clausule in combinatie met de gelijkheidsoperator (=)
SELECT * FROM table3 WHERE t3 > 2000; De WHERE-clausule in combinatie met de groter-dan-vergelijkingsoperator (>)
SELECT * FROM table1 WHERE t1 <> 1; De WHERE-clausule in combinatie met de vergelijkingsoperator 'niet gelijk aan' (<>)

SQL-opdracht INSERT INTO-tabel

commando Beschrijving
INSERT INTO table_name(column_1, column_2, ...) VALUES (value_1, value_2, ...); Basissyntaxis van de SQL INSERT-opdracht
INSERT INTO table1 (t1,t2,t3,t4) VALUES (X1,X2,X3,X4); Gegevens invoegen in een tabel
INSERT INTO table_1 SELECT * FROM table_2; Invoegen in een tabel vanuit een andere tabel

SQL DELETE-opdracht

commando Beschrijving
DELETE FROM table_name [WHERE condition]; Verwijder een rij in MySQL

SQL-updateopdracht

commando Beschrijving
UPDATE table_name SET column_name = new_value [WHERE condition]; De syntaxis van de updateopdracht

ORDER BY in SQL: DESC & ASC-opdracht

commando Beschrijving
SELECT statement... [WHERE condition | GROUP BY field_name(s) HAVING condition] ORDER BY field_name(s) [ASC | DESC]; Basissyntaxis van de ORDER BY-clausule
SELECT {fieldName(s) | *} FROM tableName(s) [WHERE condition] ORDER BY fieldname(s) ASC | DESC [LIMIT N]; DESC- en ASC-syntaxis

SQL GROUP BY en HAVING-clausuleopdracht

GROEP DOOR Het voegt rijen samen tot groepen, en HAVING filtert die groepen nadat ze zijn gevormd.

Groeperen op

commando Beschrijving
SELECT statements... GROUP BY column_name1[, column_name2, ...] [HAVING condition]; GROUP BY-syntaxis

Grouping en aggregatiefuncties

commando Beschrijving
SELECT t2, COUNT(t1) FROM table1 GROUP BY t2; Stel dat we het totale aantal t2-kolomwaarden in onze database willen hebben.

HAVING-clausule

commando Beschrijving
SELECT * FROM table2 GROUP BY t1_id, t4 HAVING t1_id = x1; Retourneert alle t4-waarden voor de rijen in tabel2 waarvan de t1_id gelijk is aan x1.

SQL-jokertekens voor Like, NOT Like, Escape, ( % ), ( _ )

Met jokertekens kunnen LIKE-tekens overeenkomen met gedeeltelijke tekenreeksen.

% het procentteken-jokerteken in MySQL

commando Beschrijving
SELECT statements... WHERE fieldname LIKE 'xxx%'; Basissyntaxis voor het procentteken %, dat overeenkomt met een willekeurig aantal tekens.

_ onderstrepen jokertekenopdracht

commando Beschrijving
SELECT * FROM table1 WHERE t3 LIKE 'x2_'; De underscore komt overeen met precies รฉรฉn teken.

NIET zoals een wildcard-opdracht

commando Beschrijving
SELECT * FROM table1 WHERE t3 NOT LIKE 'x2_'; Stel dat we de rijen uit tabel1 willen waarvan de waarde van t3 niet overeenkomt met het patroon.

Escape-opdracht voor trefwoord-jokerteken

commando Beschrijving
LIKE '67#%' ESCAPE '#'; Controleert op de letterlijke tekenreeks "67%", omdat # het jokerteken ontsnapt.

Reguliere SQL-expressies (REGEXP)

commando Beschrijving
SELECT statements... WHERE fieldname REGEXP 'pattern'; Basissyntaxis van een reguliere expressie-match

Reguliere expressie-metatekens

commando Beschrijving
* Het metateken asterisk (*) komt overeen met nul of meer instanties van de tekenreeks die eraan voorafgaat.
+ Het plusteken (+) komt overeen met een of meer instanties van de tekenreeks die eraan voorafgaat.
? Het metateken vraagteken (?) komt overeen met nul of รฉรฉn instantie van de tekenreeks die eraan voorafgaat.
. Het metateken punt (.) komt overeen met elk afzonderlijk teken, behalve een nieuwe regel.
[abc] De charlist [abc] komt overeen met elk van de ingesloten tekens.
[^abc] De charlist [^abc] komt overeen met elk teken, behalve de tekens die tussen haakjes staan.
[A-Z] Het [AZ]-bereik komt overeen met elke hoofdletter.
[a-z] Het bereik [az] komt overeen met elke kleine letter.
[0-9] Het bereik [0-9] komt overeen met elk cijfer van 0 tot en met 9.
^ Het dakje (^) verankert de wedstrijd aan het begin.
| De verticale streep (|) isoleert alternatieven.
[[:<:]] Het [[:<:]]-teken komt overeen met het begin van woorden.
[[:>:]] De markering [[:>:]] komt overeen met het einde van woorden.
[:class:] De markering [:class:] komt overeen met een tekenklasse, bijvoorbeeld [:alpha:] voor letters, [:space:] voor spaties, [:punct:] voor leestekens en [:upper:] voor hoofdletters.

SQL Functions-opdrachten

String-functies

commando Beschrijving
SELECT t1_id, t2, UCASE(t2) FROM table1; De UCASE-functie neemt een tekenreeks als parameter en zet alle letters om in hoofdletters.

Numerieke functies

commando Beschrijving Voorbeeld
DIV Integer indeling SELECT 23 DIV 6;
/ afdeling SELECT 23 / 6;
- Subtractie SELECT 23 - 6;
+ Toevoeging SELECT 23 + 6;
* Vermenigvuldiging SELECT 23 * 6 AS multiplication_result;
% or MOD modulus SELECT 23 % 6; or SELECT 23 MOD 6;
FLOOR Verwijdert de decimalen uit een getal en rondt het af naar het dichtstbijzijnde hele getal. SELECT FLOOR(23 / 6) AS floor_result;
ROUND Rondt een getal met decimalen af โ€‹โ€‹naar het dichtstbijzijnde hele getal. SELECT ROUND(23 / 6) AS round_result;

Opgeslagen functies

commando Beschrijving
CREATE FUNCTION sf_name ([parameter(s)]) Verplicht. Vertelt MySQL De server maakt een functie aan met de naam sf_name, waarbij de optionele parameters tussen haakjes zijn gedefinieerd.
RETURNS data type Verplicht. Specificeert het gegevenstype dat de functie retourneert.
DETERMINISTIC De functie retourneert dezelfde waarde wanneer dezelfde argumenten eraan worden doorgegeven.
STATEMENTS De procedurecode die de functie uitvoert.

SQL Aggregate-functieopdrachten

commando Beschrijving
SELECT COUNT(t1_id) FROM table1 WHERE t1_id = 2; AANTAL functie
SELECT MIN(t3) FROM table2; MIN-functie
SELECT MAX(t3) FROM table2; MAX-functie
SELECT SUM(t4) FROM table3; SOM-functie
SELECT AVG(t4) FROM table3; AVG functie

SQL IS NULL & IS NOT NULL-opdrachten

A NULL is een ontbrekende waarde, dus moet deze worden getest met IS NULL in plaats van de gelijkheidsoperator.

commando Beschrijving
SELECT COUNT(t3) FROM table1; COUNT negeert NULL-waarden in de kolom.
CREATE TABLE table2(
t1_number int NOT NULL,
t2_names varchar(255),
t3 varchar(6)
);
NOT NULL verbiedt lege waarden in een kolom.
column_name IS NULL
column_name IS NOT NULL
NULL-trefwoorden basissyntaxis
SELECT * FROM table1 WHERE t2_number IS NULL; Voorbeeld van IS NULL
SELECT * FROM table1 WHERE t2_number IS NOT NULL; Voorbeeld van IS NOT NULL

SQL AUTO_INCREMENT-opdrachten

commando Beschrijving
CREATE TABLE table1 (
t1_id int(11) AUTO_INCREMENT,
t2_name varchar(150) DEFAULT NULL,
t3 varchar(500) DEFAULT NULL,
PRIMARY KEY (t1_id)
);
Syntaxis voor automatische verhoging

SQL โ€“ ALTER, DROP, RENAME, WIJZIG

Deze commando's wijzigen een tabel die al gegevens bevat.

commando Beschrijving
ALTER TABLE table_name ADD COLUMN column_name data_type; ALTER-syntaxis
DROP TABLE sample_table; DROP TABLE-syntaxis
RENAME TABLE current_table_name TO new_table_name; Syntaxis van het RENAME-commando
ALTER TABLE table1 CHANGE COLUMN t1_names t1name char(250) NOT NULL; WIJZIG trefwoord
ALTER TABLE table1 MODIFY t1name char(50) NOT NULL; MODIFY-trefwoord
ALTER TABLE table1 ADD t4 date NULL AFTER t3; NA trefwoord

SQL-LIMIET & OFFSET

commando Beschrijving
SELECT {fieldname(s) | *} FROM tableName(s) [WHERE condition] LIMIT N; LIMIT-sleutelwoordsyntaxis
SELECT * FROM table1 LIMIT 1, 2; Offset in de LIMIT-query: sla 1 rij over en retourneer vervolgens 2.

SQL SubQuery-opdrachten

commando Beschrijving
SELECT t1_name FROM table1 WHERE
category_id = (SELECT MIN(t1_id) FROM table2);
Subquery's

SQL JOINS-opdrachten

DOET MEE Combineer kolommen uit twee tabellen tot รฉรฉn resultaatset.

commando Beschrijving
SELECT * FROM table1 CROSS JOIN table2; Kruis 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;
Links aansluiten
SELECT A.t1, A.t2, B.t3
FROM table1 AS A
RIGHT JOIN table2 AS B
ON B.id = A.table2_id;
RECHTS AANMELDEN
SELECT A.t1, B.t2, B.t3
FROM table2 AS A
LEFT JOIN table1 AS B
USING (table2_id);
โ€œONโ€- en โ€œUSINGโ€-clausules

SQL UNION-opdrachten

Een UNION-bewerking stapelt de rijen van twee query's op elkaar, terwijl een JOIN-bewerking ze uitbreidt tot meer kolommen.

commando Beschrijving
SELECT column1, column2 FROM table1
UNION
SELECT column1, column2 FROM table2;
UNION-syntaxis. Dubbele rijen worden verwijderd.
SELECT column1, column2 FROM table1
UNION ALL
SELECT column1, column2 FROM table2;
UNION ALL behoudt dubbele rijen.

SQL in Views-opdrachten

Weergaves Sla een query op onder een naam, zodat deze net als een tabel hergebruikt kan worden.

commando Beschrijving
CREATE VIEW view_name AS SELECT statement; Syntaxis van weergaven
DROP VIEW general_v_movie_rentals; Valping .

SQL Index-opdrachten

Een index is een opzoekstructuur die zoekopdrachten in een kolom aanzienlijk versnelt.

commando Beschrijving
CREATE INDEX id_index ON table_name(column_name); Voeg de basissyntaxis van de index toe
DROP INDEX index_id ON table_name; Basissyntaxis van de index verwijderen

Veelgestelde vragen

Nee. Trefwoorden zoals SELECT en WHERE werken in alle gevallen. Hoofdletters zijn een conventie om commando's van identificatoren te scheiden. Tabelnamen kunnen echter wel hoofdlettergevoelig zijn op Linux.

DELETE verwijdert geselecteerde rijen en kan ongedaan worden gemaakt. TRUNCATE maakt de hele tabel snel leeg en reset AUTO_INCREMENT. DROP verwijdert de tabeldefinitie zelf.

FROM en JOIN worden eerst uitgevoerd, daarna WHERE, GROUP BY, HAVING, SELECT, ORDER BY en tot slot LIMIT. Dit is de reden waarom een โ€‹โ€‹kolomalias die in SELECT is gedefinieerd, niet binnen WHERE kan worden gebruikt.

Ja. Tekst-naar-SQL-assistenten vertalen een vraag naar een query met behulp van het tabelschema. Lees altijd de gegenereerde WHERE- en JOIN-voorwaarden, want een plausibele query kan onjuiste rijen retourneren.

Ja. RevHet bekijken van AI-output, het optimaliseren van trage query's en het lezen van een uitvoeringsplan vereisen allemaal een vloeiende beheersing van de commando's. Een naslagwerk versnelt het ophalen van informatie; het vervangt echter niet het begrip ervan.

Vat dit bericht samen met: