Dette SQL-cheatsarket samler kommandoene en arbeidende utvikler bruker daglig, ordnet etter oppgave. Hver seksjon kombinerer den nรธyaktige syntaksen med en enkel beskrivelse, som dekker databaseoppretting, datatyper, spรธrring, filtrering, sammenfรธyning og indeksering.
๐๏ธ Strukturkommandoer: OPPRETT DATABASE, OPPRETT TABELL, ENDRE, ENDR NAVN og SLIPP definerer og omformer skjemaet.
๐ข Datatyper: Numeriske, tekst-, dato- og binรฆre typer angir lagringsstรธrrelsen og det gyldige omrรฅdet for hver kolonne.
๐ Hentingskommandoer: SELECT med WHERE, IN, LIKE og REGEXP begrenser et resultatsett til de radene som er viktige.
โ๏ธ Modifikasjonskommandoer: INSERT, UPDATE og DELETE endrer lagrede rader, og hver av dem godtar en valgfri betingelse.
๐ Aggregeringskommandoer: GROUPรR ETTER med ANTALL, MIN, MAX, SUM og AVG oppsummerer data, og HAVING filtrerer gruppene.
๐ Kombinasjonskommandoer: JOIN slรฅr sammen tabeller side om side, mens UNION stabler resultatene av to spรธrringer.
UPDATE table_name SET column_name = new_value [WHERE condition];
Oppdater kommandosyntaks
ORDER BY i SQL: DESC & ASC kommando
Kommando
Tekniske beskrivelser
SELECT statement... [WHERE condition | GROUP BY field_name(s) HAVING condition] ORDER BY field_name(s) [ASC | DESC];
Grunnleggende syntaks for ORDER BY-klausulen
SELECT {fieldName(s) | *} FROM tableName(s) [WHERE condition] ORDER BY fieldname(s) ASC | DESC [LIMIT N];
DESC og ASC syntaks
SQL GROUP BY og HAVING Klausul kommando
GRUPPE AV kollapser rader i grupper, og HAVING filtrerer disse gruppene etter at de er dannet.
Gruppe av
Kommando
Tekniske beskrivelser
SELECT statements... GROUP BY column_name1[, column_name2, ...] [HAVING condition];
GROUP BY-syntaks
Grouping og aggregerte funksjoner
Kommando
Tekniske beskrivelser
SELECT t2, COUNT(t1) FROM table1 GROUP BY t2;
Anta at vi vil ha det totale antallet t2-kolonneverdier i databasen vรฅr.
ร ha klausul
Kommando
Tekniske beskrivelser
SELECT * FROM table2 GROUP BY t1_id, t4 HAVING t1_id = x1;
Returnerer alle t4-verdiene for tabell2-rader der t1_id er x1.
SQL Wildcards-kommandoer for Like, NOT Like, Escape, ( % ), ( _ )
Jokertegn lar LIKE matche delvise strenger.
% prosentjokertegnet-kommandoen i MySQL
Kommando
Tekniske beskrivelser
SELECT statements... WHERE fieldname LIKE 'xxx%';
Grunnleggende syntaks for jokertegnet % prosent, som samsvarer med et hvilket som helst antall tegn
_ understrek jokertegn kommando
Kommando
Tekniske beskrivelser
SELECT * FROM table1 WHERE t3 LIKE 'x2_';
Understrekingen samsvarer med nรธyaktig ett tegn.
IKKE som jokertegn kommando
Kommando
Tekniske beskrivelser
SELECT * FROM table1 WHERE t3 NOT LIKE 'x2_';
Anta at vi รธnsker tabell1-radene hvis t3-verdi ikke samsvarer med mรธnsteret.
Escape nรธkkelordet jokertegn kommando
Kommando
Tekniske beskrivelser
LIKE '67#%' ESCAPE '#';
Sjekker for den litterale strengen ยซ67 %ยป, fordi # omgรฅr jokertegnet.
SQL Regular Expressions (REGEXP)
Kommando
Tekniske beskrivelser
SELECT statements... WHERE fieldname REGEXP 'pattern';
Grunnleggende syntaks for et samsvar med regulรฆre uttrykk
Regelmessig uttrykk Metakarakterer
Kommando
Tekniske beskrivelser
*
Metategnet stjerne (*) samsvarer med null eller flere forekomster av strengen som kommer foran det.
+
Pluss-metategnet (+) samsvarer med รฉn eller flere forekomster av strengen som kommer foran det.
?
Spรธrsmรฅlstegnet (?) samsvarer med null eller รฉn forekomst av strengen foran det.
.
Punktummetategnet (.) samsvarer med et hvilket som helst enkelttegn unntatt en ny linje.
[abc]
Tegnlisten [abc] samsvarer med hvilket som helst av de omsluttede tegnene.
[^abc]
Tegnlisten [^abc] samsvarer med alle tegn unntatt de som er omsluttet.
[A-Z]
[AZ]-omrรฅdet samsvarer med alle store bokstaver.
[a-z]
[az]-omrรฅdet samsvarer med alle smรฅ bokstaver.
[0-9]
Tallomrรฅdet [0-9] samsvarer med et hvilket som helst siffer fra 0 til 9.
^
Cirkumflekstegnet (^) forankrer treffet i begynnelsen.
|
Den vertikale linjen (|) isolerer alternativer.
[[:<:]]
Markรธren [[:<:]] samsvarer med begynnelsen av ord.
[[:>:]]
Markรธren [[:>:]] samsvarer med slutten av ord.
[:class:]
Markรธren [:class:] samsvarer med en tegnklasse, for eksempel [:alpha:] for bokstaver, [:space:] for mellomrom, [:punct:] for tegnsetting og [:upper:] for store bokstaver.
SQL-funksjoner kommandoer
Strengefunksjoner
Kommando
Tekniske beskrivelser
SELECT t1_id, t2, UCASE(t2) FROM table1;
UCASE-funksjonen tar en streng som parameter og konverterer alle bokstavene til store bokstaver.
Numeriske funksjoner
Kommando
Tekniske beskrivelser
Eksempel
DIV
Heltall divisjon
SELECT 23 DIV 6;
/
Divisjon
SELECT 23 / 6;
-
Subtracsjon
SELECT 23 - 6;
+
Addisjon
SELECT 23 + 6;
*
Multiplikasjon
SELECT 23 * 6 AS multiplication_result;
% or MOD
modulus
SELECT 23 % 6; or SELECT 23 MOD 6;
FLOOR
Fjerner desimalene fra et tall og runder det ned til nรฆrmeste hele tall.
SELECT FLOOR(23 / 6) AS floor_result;
ROUND
Avrunder et tall med desimaler til nรฆrmeste hele tall.
SELECT ROUND(23 / 6) AS round_result;
Lagrede funksjoner
Kommando
Tekniske beskrivelser
CREATE FUNCTION sf_name ([parameter(s)])
Obligatorisk. Forteller MySQL server for รฅ opprette en funksjon med navnet sf_navn med de valgfrie parameterne definert i parentesene.
RETURNS data type
Obligatorisk. Angir datatypen som funksjonen returnerer.
DETERMINISTIC
Funksjonen returnerer samme verdi hver gang de samme argumentene leveres til den.
STATEMENTS
Prosedyrekoden som funksjonen utfรธrer.
SQL Aggregate funksjonskommandoer
Kommando
Tekniske beskrivelser
SELECT COUNT(t1_id) FROM table1 WHERE t1_id = 2;
COUNT funksjon
SELECT MIN(t3) FROM table2;
MIN funksjon
SELECT MAX(t3) FROM table2;
MAX-funksjon
SELECT SUM(t4) FROM table3;
SUM funksjon
SELECT AVG(t4) FROM table3;
AVG funksjon
SQL ER NULL & IS NOT NULL kommandoer
A NULL er en fravรฆrende verdi, sรฅ den mรฅ testes med IS NULL i stedet for equals-operatoren.
Kommando
Tekniske beskrivelser
SELECT COUNT(t3) FROM table1;
COUNT ignorerer NULL-verdier i kolonnen.
CREATE TABLE table2(
t1_number int NOT NULL,
t2_names varchar(255),
t3 varchar(6)
);
Disse kommandoene endrer en tabell som allerede inneholder data.
Kommando
Tekniske beskrivelser
ALTER TABLE table_name ADD COLUMN column_name data_type;
ALTER-syntaks
DROP TABLE sample_table;
DROP TABLE syntaks
RENAME TABLE current_table_name TO new_table_name;
RENAME-kommandosyntaks
ALTER TABLE table1 CHANGE COLUMN t1_names t1name char(250) NOT NULL;
ENDRE sรธkeord
ALTER TABLE table1 MODIFY t1name char(50) NOT NULL;
ENDR sรธkeord
ALTER TABLE table1 ADD t4 date NULL AFTER t3;
ETTER-nรธkkelordet
SQL GRENSE OG OFFSET
Kommando
Tekniske beskrivelser
SELECT {fieldname(s) | *} FROM tableName(s) [WHERE condition] LIMIT N;
LIMIT sรธkeordsyntaks
SELECT * FROM table1 LIMIT 1, 2;
Offset i LIMIT-spรธrringen: hopp over 1 rad, og returner deretter 2.
SQL SubQuery-kommandoer
Kommando
Tekniske beskrivelser
SELECT t1_name FROM table1 WHERE category_id = (SELECT MIN(t1_id) FROM table2);
Undersรธk
SQL JOINS-kommandoer
tiltrer kombinere kolonner fra to tabeller til ett resultatsett.
Kommando
Tekniske beskrivelser
SELECT * FROM table1 CROSS JOIN table2;
Kryss BLI MED
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;
VENSTRE BLI MED
SELECT A.t1, A.t2, B.t3
FROM table1 AS A
RIGHT JOIN table2 AS B
ON B.id = A.table2_id;
RIKTIG MEDLEM
SELECT A.t1, B.t2, B.t3
FROM table2 AS A
LEFT JOIN table1 AS B
USING (table2_id);
"ON" og "USING" klausuler
SQL UNION-kommandoer
UNION stabler radene i to spรธrringer, mens en JOIN utvider dem til flere kolonner.
Kommando
Tekniske beskrivelser
SELECT column1, column2 FROM table1
UNION
SELECT column1, column2 FROM table2;
UNION-syntaks. Dupliserte rader fjernes.
SELECT column1, column2 FROM table1
UNION ALL
SELECT column1, column2 FROM table2;
UNION ALL beholder dupliserte rader.
SQL in Views-kommandoer
Visninger lagre en spรธrring under et navn slik at den kan brukes om igjen som en tabell.
Kommando
Tekniske beskrivelser
CREATE VIEW view_name AS SELECT statement;
Syntaks for visninger
DROP VIEW general_v_movie_rentals;
Dropping visninger
SQL Index-kommandoer
En indeks er en oppslagsstruktur som gjรธr sรธk i en kolonne mye raskere.
Kommando
Tekniske beskrivelser
CREATE INDEX id_index ON table_name(column_name);
Legg til grunnleggende syntaks for indeks
DROP INDEX index_id ON table_name;
Slipp indeks grunnleggende syntaks
Spรธrsmรฅl og svar
Nei. Nรธkkelord som SELECT og WHERE fungerer uansett. Store bokstaver er en konvensjon som skiller kommandoer fra identifikatorer. Tabellnavn kan imidlertid vรฆre store og smรฅ bokstaver sensitive pรฅ Linux.
DELETE fjerner valgte rader og kan rulles tilbake. TRUNCATE tรธmmer hele tabellen raskt og tilbakestiller AUTO_INCREMENT. DROP fjerner selve tabelldefinisjonen.
FROM og JOIN kjรธres fรธrst, deretter WHERE, GROUP BY, HAVING, SELECT, ORDER BY og til slutt LIMIT. Dette er grunnen til at et kolonnealias definert i SELECT ikke kan brukes i WHERE.
Ja. Tekst-til-SQL-assistenter oversetter et spรธrsmรฅl til en spรธrring ved hjelp av tabellskjemaet. Les alltid de genererte WHERE- og JOIN-betingelsene, fordi en plausibel spรธrring kan returnere feil rader.
Ja. Revร se AI-utdata, finjustere langsomme spรธrringer og lese en utfรธrelsesplan krever flyt i kommandoene. Et referanseark fremskynder hukommelsen; det erstatter ikke forstรฅelse.
Oppsummer dette innlegget med:
Hold deg oppdatert pรฅ AITa Ukentlig AI Ferdigheter, trender, handlingsrettede rรฅd.