SQL Cheat Sheet (2021-opdatering)

I dette SQL Query-snyderark lærer du

Opret database- og tabelkommandoer

Kommando Beskrivelse
OPRET DATABASE DATABASE; Opret database
OPRET DATABASE, EKSISTER ikke database1; HVIS IKKE EKSISTER, kan du instruere MySQL-serveren om at kontrollere eksistensen af ​​en database med et lignende navn inden oprettelse af database.
OPRET DATABASE, HVIS IKKE FINDER database1 TEGNESÆT latin1 SAMLING latin1_swedish_ci Latin1-tegnsættet bruger sorteringen latin1_swedish_ci, som er den svenske store og små bogstaver.
VIS DATABASER Du kan se listen over eksisterende databaser ved at køre efter SQL-kommando.
OPRET TABEL [HVIS IKKE FINDER] Tabelnavn (feltnavn dataType [valgfri parametre]) MOTOR = lagermotor; Opret tabelsyntaks

DATATYPER

Numeriske datatyper

Kommando Beskrivelse
TINYINT () -128 til 127 normal 0 til 255 UNSIGNED.
SMALLINT () -32768 til 32767 normal 0 til 65535 UNSIGNED.
MEDIUMINT () -8388608 til 8388607 normal 0 til 16777215 UNSIGNED.
INT () -2147483648 til 2147483647 normal 0 til 4294967295 UNSIGNED.
BIGINT () -9223372036854775808 til 9223372036854775807 normal 0 til 18446744073709551615 UNSIGNED.
FLYDE Et lille omtrentligt tal med et flydende decimaltegn.
DOBBELT( , ) Et stort tal med et flydende decimaltegn.
DECIMAL (,) EN DOBBEL gemt som en streng, hvilket giver mulighed for et fast decimaltegn. Valg til lagring af valutaværdier.

Tekstdatatyper

Kommando Beskrivelse
CHAR () Et fast afsnit fra 0 til 255 tegn.
VARCHAR () Et variabelt afsnit fra 0 til 255 tegn.
TINYTEXT En streng med en maksimal længde på 255 tegn.
TEKST En streng med en maksimal længde på 65535 tegn.
BLOB En streng med en maksimal længde på 65535 tegn.
MEDIUMTEXT En streng med en maksimal længde på 16777215 tegn.
MEDIUMBLOB En streng med en maksimal længde på 16777215 tegn.
LONGTEXT En streng med en maksimal længde på 4294967295 tegn.
LONGBLOB En streng med en maksimal længde på 4294967295 tegn.

Datatyper for dato / tid

Kommando Beskrivelse
DATO ÅÅÅÅ-MM-DD
DATO TID ÅÅÅÅ-MM-DD HH: MM: SS
TIDSSTEMPEL ÅÅÅÅMMDDHHMMSS
TID HH: MM: SS

Andre datatyper

Kommando Beskrivelse
ENUM At gemme tekstværdi valgt fra en liste med foruddefinerede tekstværdier.
SÆT Dette bruges også til lagring af tekstværdier valgt fra en liste med foruddefinerede tekstværdier. Det kan have flere værdier.
BOOL Synonym for TINYINT (1), bruges til at gemme boolske værdier
BINÆR I lighed med CHAR er forskellen, at tekster er gemt i binært format.
VARBINÆR I lighed med VARCHAR er forskellen, at tekster er gemt i binært format.

MySQL SELECT-sætningskommando

Kommando Beskrivelse
VÆLG [DISTINCT | ALL] {* | [fieldExpression [AS newName]} FRA tableName [alias] [WHERE condition] [GROUP BY fieldName (s)] [HAVING condition] ORDER BY fieldName (s) SQL SELECT-sætningssyntaks
VÆLG * FRA tabel1; vælg tabellen
VÆLG t1, t2, t3, t4 FRA tabel1; vi er kun interesseret i kun at få felterne t1, t2, t3 og t4.
VÆLG Concat (t1, (, t3,)), t4 FRA tabel2; Få tabel2 liste
VÆLG kolonnenavn | værdi | udtryk [AS] alias_navn; Alias-feltnavne syntaks

MySQL WHERE-klausul med AND, OR, IN, NOT IN-kommandoer

Kommando Beskrivelse
VÆLG * FRA tabelnavn HVOR tilstand; WHERE klausul Syntaks
VÆLG * FRA tabel1 HVOR t1 = 2 OG t2 = 2008; Hvor klausul kombineret med - OG LOGISK operatør
VÆLG * FRA tabel1 HVOR t1 = 1 ELLER t1 = 2; WHERE klausul kombineret med - ELLER LOGISK operatør
VÆLG * FRA tabel2 HVOR t1 IN (1,2,3); WHERE klausul kombineret med - IN Keyword
VÆLG * FRA tabel2 HVOR t1 IKKE I (1,2,3); WHERE klausul kombineret med - NOT IN Keyword
VÆLG * FRA tabel2 HVOR t3 = Kvinde; WHERE klausul kombineret med Equal (=) til COMPARISON OPERATORS
VÆLG * FRA tabel3 HVOR t3> 2000; WHERE klausul kombineret med større end (>) til COMPARISON OPERATORS
VÆLG * FRA tabel1 HVOR t1 <> 1; WHERE klausul kombineret med ikke lig med (<>) SAMMENLIGNINGSOPERATØRER

MySQL Command INSERT INTO Table

Kommando Beskrivelse
INDSÆT TIL tabelnavn (kolonne_1, kolonne_2,…) VÆRDIER (værdi_1, værdi_2,…); grundlæggende syntaks for kommandoen SQL INSERT
INDSÆT TIL tabel1 (t1, t2, t3, t4) VÆRDIER (X1, X2, X3, X4); INDSÆT data i tabellen
INDSÆT I tabel_1 VÆLG * FRA tabel_2; Indsættelse i en tabel fra en anden tabel

MySQL DELETE-kommando

Kommando Beskrivelse
SLET FRA tabelnavn [WHERE-tilstand]; Slet en række i MySQL

Eksempel: - SLET FRA tabel1 HVOR tabel1_id = 18;

(slet indtastning af 18 nummer id formtabel1.) SLET FRA tabel1 HVOR tabel1_id IN (20,21); (slet post i 20 og 21 nummer-id-formtabel1)

MySQL Update Command

Kommando Beskrivelse
OPDATER tabelnavn SET kolonnenavn = ny_værdi [WHERE-tilstand]; opdater kommandosyntaks

Eksempel: - VÆLG * FRA tabel1 HVOR t1 = 1;

(Hent posten for t1 = 1) UPDATE-tabel1 SET t4 = X1 WHERE t1 = 1; (opdater t4-værdien i tabel)

ORDER BY i MySQL: DESC & ASC-kommando

Kommando Beskrivelse
VÆLG sætning ... [WHERE condition | GROUP BY field_name (s) HAVING condition] ORDER BY field_name (s) [ASC | DESC]; Ordne efter klausul grundlæggende syntaks
VÆLG {fieldName (s) | *} FRA tabel (r) [HVOR betingelse] BESTIL EFTER feltnavn (er) ASC / DESC [GRÆNSE N] DESC og ASC syntaks

Eksempel: - For DESC (faldende)

VÆLG * FRA tabel1 BESTILLE VED t3 DESC; For ASC (stigende) VÆLG * FRA tabel1 ORDER BY t3 ASC;

MySQL GROUP BY og HAR Klausulkommando

Gruppér efter

Kommando Beskrivelse
VÆLG udsagn ... GROUP BY column_name1 [, column_name2,…] [HAVING condition]; GROUP BY Syntaks

Eksempel på gruppering af en enkelt kolonne: - VÆLG t4 FRA tabel1;

VÆLG t4 FRA tabel1 GROUP BY t4; (antag, at vi ønsker at få de unikke værdier for t4.)

Eksempel til gruppering af flere kolonner: - VÆLG t1_id, t4 FRA tabel2;

VÆLG t1_id, t4 FRA tabel2 GROUP BY t1_id, t4; (ved hjælp af gruppe efter metode)

Gruppering og samlede funktioner

Kommando Beskrivelse
VÆLG t2, TÆLLING (t1) FRA tabel1 GRUPPE VED t2; Antag, at vi vil have det samlede antal t2-kolonneværdier i vores database.

HAR klausul

Kommando Beskrivelse
VÆLG * FRA tabel2 GRUPPE VED t1_id, t4 HAR T1_id = x1; alle t4 til tabel2 t1 id x1. Vi bruger følgende script til at opnå vores resultater.

MySQL Wildcards-kommandoer til Like, NOT Like, Escape, (%), (_)

% procentdelen af ​​jokertegn kommanderet i MySQL

Kommando Beskrivelse
VÆLG sætninger ... HVOR feltnavn LIKE xxx%; grundlæggende syntaks for% procent wildcard

Eksempel: - vi ville bruge det procentvise jokertegn til at udføre et mønstermatch på begge sider af ordet "X1" som del t2 i tabel1 VÆLG * FRA tabel1 HVOR t2 LIGE% X1%;

VÆLG * FRA tabel1 HVOR t2 LIGER% X1; (kun det procentvise wildcard i begyndelsen af ​​søgekriterierne) VÆLG * FRA tabel1 HVOR t2 LIGER X1%; (det procentvise jokertegn til slutningen af ​​det angivne mønster, der skal matches.)

_ understrege kommandoen med jokertegn

Kommando Beskrivelse
VÆLG * FRA tabel1 HVOR t3 LIKE x2_; alle tabel1, der var t3 i året "x2"

IKKE som jokertegnkommando

Kommando Beskrivelse
VÆLG * FRA tabel1 HVOR t3 IKKE Ligesom X2_; Antag, at vi ønsker at få tabel1, der ikke var t3 i året X2_

Undslip nøgleordet jokertegnkommando

Kommando Beskrivelse
Ligesom 67 # %% ESCAPE #; vi vil tjekke for strengen "67%"

MYSQL Regular Expressions (REGEXP)

Kommando Beskrivelse
VÆLG udsagn ... HVOR feltnavn REGEXP mønster; grundlæggende syntaks for regulært udtryk

Eksempel: - alle tabel1 t1, der har ordet X1. Det betyder ikke noget, om "X1" er i begyndelsen, midten eller slutningen af ​​titlen. VÆLG * FRA tabel1 HVOR t1 REGEXP X1;

Regelmæssigt udtryk Metategn

Kommando Beskrivelse
* Asterisk (*) metakarakteren bruges til at matche nul (0) eller flere forekomster af strengene forud for den
+ Plus (+) metakarakteren bruges til at matche en eller flere forekomster af strenge forud for den.
? Spørgsmålet (?) Metakarakter bruges til at matche nul (0) eller en forekomst af strengene forud for den.
. Punktet (.) -Metakendetegn bruges til at matche ethvert enkelt tegn undtagen en ny linje.
[abc] Charlisten [abc] bruges til at matche et hvilket som helst af de vedlagte tegn.
[^abc] Charlisten [abc] bruges til at matche alle tegn undtagen de vedlagte.
[A-Z] [AZ] bruges til at matche ethvert stort bogstav
[a-z] [Az] bruges til at matche ethvert lille bogstav
[0-9] [0-9] bruges til at matche ethvert ciffer fra 0 til 9.
^ Tegn (^) bruges til at starte kampen i starten.
| Den lodrette bjælke (|) bruges til at isolere alternativer.
[[:<:]] [[: <:]] Matcher begyndelsen af ​​ord.
[[:>:]] [[:>:]] Matcher slutningen af ​​ord.
[:class:] [: Klasse:] matcher en tegnklasse, dvs. [: alfa:] for at matche bogstaver, [: mellemrum:] for at matche det hvide mellemrum, [: punkt:] er match tegnsætning og [: øvre:] for bogstaver i øverste klasse.

SQL-funktioner-kommandoer

Strengfunktioner

Kommando Beskrivelse
VÆLG t1_id, t2, UCASE (t2) FRA tabel1; "UCASE" -funktionen til at gøre det. Det tager en streng som parameter og konverterer alle bogstaverne til store bogstaver.

Numeriske funktioner

Kommando Beskrivelse Eksempel
DIV Heltalsafdeling VÆLG 23 DIV 6;
/ Division VÆLG 23/6;
- Subtraktion VÆLG 23 - 6;
+ Tilføjelse VÆLG 23 + 6;
* Multiplikation VÆLG 23 * 6 AS multiplikationsresultat;
% or MOD Modulus VÆLG 23% 6; eller VÆLG 23 MOD 6;
Floor denne funktion fjerner decimaler fra et tal og afrunder det til nærmeste laveste tal. VÆLG GULV (23/6) AS gulvresultat;
Round denne funktion afrunder et tal med decimaler til nærmeste heltal. VÆLG RUND (23/6) SOM runde-resultat;

Gemte funktioner

Kommando Beskrivelse
OPRET FUNKTION sf_name ([parameter (er)]) RETURER datatype DETERMINISTISKE UDTALELSER grundlæggende syntaks til oprettelse af en gemt funktion
OPRET FUNKTION sf_name ([parameter (er)]) Obligatorisk og beder MySQL-serveren om at oprette en funktion ved navn 'sf_name' med valgfri parametre defineret i parentes.
RETURER datatype Obligatorisk og specificerer den datatype, som funktionen skal returnere.
DETERMINISTISK Funktionen returnerer de samme værdier, hvis de samme argumenter leveres til den.
UDTALELSER Den procedurekode, som funktionen udfører.

MySQL Aggregate-funktionskommandoer

Kommando Beskrivelse
VÆLG TÆLL (t1_id) FRA tabel1 HVOR t1_id = 2; COUNT-funktion
VÆLG MIN (t3) FRA tabel2; MIN-funktion
VÆLG MAX (t3) FRA tabel2; MAX-funktion
VÆLG SUM (t4) FRA tabel3; SUM-funktion
VÆLG AVG (t4) FRA tabel3; AVG-funktion

MySQL ER NULL & ER IKKE NULL-kommandoer

Kommando Beskrivelse
VÆLG TÆLL (t3) FRA tabel1; (hvis t3 har nulværdi til stede, der ikke tæller) Null som værdi
Opret TABEL tabel2 (t1_nummer int IKKE NULL, t2_navne varchar (255), t3 varchar (6)); IKKE NULL Værdier
comlumn_name IS NULL comlumn_name NOT NULL NULL Nøgleord Grundlæggende syntaks
VÆLG * FRA tabel1 HVOR t2_nummer ER NULL; Eksempel på IS NULL
VÆLG * FRA tabel1 HVOR t2_nummer IKKE ER NULL; Eksempel på ER IKKE NULL

MySQL AUTO_INCREMENT kommandoer

Kommando Beskrivelse
OPRET TABEL tabel1 (t1_id int (11) AUTO_INCREMENT, t2_name varchar (150) STANDARD NULL, t3 varchar (500) STANDARD NULL, PRIMÆR NØGLE (t1_id)); Automatisk forøgelse af syntaks

MYSQL - ALTER, DROP, RENAME, MODIFY

Kommando Beskrivelse
ALTER TABLE tabelnavn TILFØJ KOLONNE kolonnenavn datatype; Alter-syntaks
DROP TABLE sample_table; DROP TABLE syntaks
RENAME TABLE nuværende_tabelnavn til nyt_tabelnavn; OMDØB KOMMANDASyntaks
ALTER TABEL tabel1 SKIFT KOLONN t1_navne t1navn char (250) IKKE NULL; SKIFT KEYWORD
ALTER TABEL tabel1MODIFICER t1navn char (50) IKKE NULL; ÆNDR Nøgleord
ALTER TABEL tabel1 TILFØJ t4 dato NULL EFTER t3; EFTER Nøgleord

MySQL LIMIT & OFFSET

Kommando Beskrivelse
VÆLG {feltnavn (er) | *} FRA tabel (r) [WHERE betingelse] GRÆNSE N; LIMIT nøgleordssyntaks
VÆLG * FRA tabel1 GRÆNSE 1, 2; OFF SET i LIMIT-forespørgslen

MySQL SubQuery-kommandoer:

Kommando Beskrivelse
SELECT t1_name FROM table1 WHERE category_id = (SELECT MIN (t1_id) from table2); underforespørgsler

MySQL JOINS-kommandoer

Kommando Beskrivelse
VÆLG * FRA tabel1 CROSS JOIN-tabel2 Kryds JOIN
VÆLG tabel1.t1, tabel1.t2, tabel2.t1 FRA tabel1, tabel2 HVOR tabel2.id = tabel1.tabel2_id INDRE MEDLEM
VÆLG A.t1, B.t2, B.t3 FRA tabel2 SOM EN VENSTRE FORENING tabel1 AS B PÅ B.tabel2_id = A.id VENSTRE MEDLEM
VÆLG A.t1, A.t2, B.t3 FRA tabel1 SOM EN HØJRE FORENING tabel2 AS B ON B.id = A.table2_id Højre tilslutning
VÆLG A.t1, B.t2, B.t3 FRA tabel2 SOM EN VENSTRE SAMLING tabel1 SOM B BRUGER (tabel2_id) "ON" og "USING" klausuler

MySQL UNION-kommandoer

Kommando Beskrivelse
VÆLG kolonne1, kolonne2 FRA tabel1 UNION-syntaks
VÆLG kolonne1, kolonne2 FRA tabel2; UNION DISTINCT

MySQL i Views-kommandoer

Kommando Beskrivelse
CREATE VIEW view_name AS SELECT-sætning; Visningssyntaks
DROP VIEW general_v_movie_rentals; Faldende synspunkter

MySQL-indekskommandoer

Kommando Beskrivelse
CREATE INDEX id_index ON table_name (column_name); Tilføj indeks grundlæggende syntaks
DROP INDEX index_id ON tabelnavn; Slip indeks grundlæggende syntaks

Interessante artikler...