SQL Cheat Sheet (2021-oppdatering)

I dette SQL Query-juksearket vil du lære

Lag database- og tabellkommandoer

Kommando Beskrivelse
OPPRETT DATABASE DATABASE; Opprett database
OPPRETT DATABASE IKKE FINNER database1; HVIS IKKE EKSISTER, kan du instruere MySQL-serveren om å kontrollere eksistensen av en database med et lignende navn før du oppretter en database.
OPPRETT DATABASE HVIS IKKE eksisterer database1 KARAKTERSETT latin1 SAMLING latin1_swedish_ci Latin1-tegnsettet bruker latin1_swedish_ci-sorteringen som er den svenske store og små bokstaver.
VIS DATABASER Du kan se listen over eksisterende databaser ved å kjøre følgende SQL-kommando.
OPPRETT TABELL [HVIS IKKE eksisterer] Tabellnavn (feltnavn datatype [valgfrie parametere]) MOTOR = lagringsmotor; Lag tabellsyntaks

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.
STOR () -9223372036854775808 til 9223372036854775807 normal 0 til 18446744073709551615 UNSIGNED.
FLYTE Et lite omtrentlig tall med et flytende desimaltegn.
DOBBELT (,) Et stort tall med et flytende desimaltegn.
DESIMAL( , ) EN DOBBEL lagret som en streng, noe som gir et fast desimaltegn. Valg for lagring av valutaverdier.

Tekstdatatyper

Kommando Beskrivelse
CHAR () En fast seksjon på fra 0 til 255 tegn.
VARCHAR () En variabel seksjon fra 0 til 255 tegn.
TINYTEXT En streng med en maksimal lengde på 255 tegn.
TEKST En streng med en maksimal lengde på 65535 tegn.
BLOB En streng med en maksimal lengde på 65535 tegn.
MEDIUMTEXT En streng med en maksimal lengde på 16777215 tegn.
MEDIUMBLOB En streng med en maksimal lengde på 16777215 tegn.
LONGTEXT En streng med en maksimal lengde på 4294967295 tegn.
LONGBLOB En streng med en maksimal lengde på 4294967295 tegn.

Datatyper for dato / tid

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

Andre datatyper

Kommando Beskrivelse
ENUM For å lagre tekstverdi valgt fra en liste over forhåndsdefinerte tekstverdier.
SETT Dette brukes også til å lagre tekstverdier valgt fra en liste over forhåndsdefinerte tekstverdier. Det kan ha flere verdier.
BOOL Synonym for TINYINT (1), brukes til å lagre boolske verdier
BINAR I likhet med CHAR er forskjellen at tekster lagres i binært format.
VARBINÆR I likhet med VARCHAR er forskjellen at tekster lagres i binært format.

MySQL SELECT-kommandoen

Kommando Beskrivelse
VELG [DISTINCT | ALL] {* | [fieldExpression [AS newName]} FRA tableName [alias] [WHERE condition] [GROUP BY fieldName (s)] [HAVING condition] ORDER BY fieldName (s) SQL SELECT-setningssyntaks
VELG * FRA tabell1; velg tabellen
VELG t1, t2, t3, t4 FRA tabell1; vi er bare interessert i å få bare feltene t1, t2, t3 og t4.
VELG Concat (t1, (, t3,)), t4 FRA tabell2; Få tabell2-oppføring
VELG kolonnenavn | verdi | uttrykk [AS] aliasnavn; Alias-feltnavn syntaksen

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

Kommando Beskrivelse
VELG * FRA tabellnavn HVOR tilstand; WHERE klausul Syntaks
VELG * FRA tabell1 HVOR t1 = 2 OG t2 = 2008; WHERE klausul kombinert med - OG LOGISK operatør
VELG * FRA tabell1 HVOR t1 = 1 ELLER t1 = 2; WHERE klausul kombinert med - ELLER LOGISK operatør
VELG * FRA tabell2 HVOR t1 IN (1,2,3); WHERE klausul kombinert med - IN Keyword
VELG * FRA tabell2 HVOR t1 IKKE INN (1,2,3); WHERE klausul kombinert med - NOT IN Keyword
VELG * FRA tabell2 HVOR t3 = Kvinne; WHERE klausul kombinert med Equal (=) til COMPARISON OPERATORS
VELG * FRA tabell3 HVOR t3> 2000; WHERE klausul kombinert med større enn (>) til COMPARISON OPERATORS
VELG * FRA tabell1 HVOR t1 <> 1; WHERE klausul kombinert med Ikke lik (<>) SAMMENLIGNINGSOPERATØRER

MySQL Command INSERT INTO Table

Kommando Beskrivelse
INSERT INTO table_name (column_1, column_2,…) VALUES (value_1, value_2,…); grunnleggende syntaks for SQL INSERT-kommandoen
INSERT INTO table1 (t1, t2, t3, t4) VALUES (X1, X2, X3, X4); Sett inn data i tabellen
INSERT INTO table_1 VELG * FRA table_2; Sette inn i en tabell fra en annen tabell

MySQL DELETE-kommando

Kommando Beskrivelse
SLETT FRA tabellnavn [WHERE condition]; Slett en rad i MySQL

Eksempel: - SLETT FRA table1 WHERE table1_id = 18;

(slett oppføring av 18 nummer id skjema tabell1.) SLETT FRA tabell1 HVOR tabell1_id IN (20,21); (slett oppføring av 20 og 21 nummer-ID-skjema tabell1)

MySQL Update Command

Kommando Beskrivelse
UPDATE table_name SET column_name = new_value [WHERE condition]; oppdater kommandosyntaks

Eksempel: - VELG * FRA tabell1 HVOR t1 = 1;

(hente posten for t1 = 1) UPDATE-tabell1 SETT4 = X1 WHERE t1 = 1; (oppdater t4-verdien i tabellen)

BESTILLE I MySQL: DESC & ASC-kommando

Kommando Beskrivelse
SELECT-setning ... [WHERE condition | GROUP BY feltnavn (er) HAR betingelse] BESTILL AV Feltnavn (er) [ASC | DESC]; Ordne etter paragraf grunnleggende syntaks
VELG {feltnavn (er) | *} FRA tabellnavn (er) [WHERE condition] ORDER BY fieldname (s) ASC / DESC [LIMIT N] DESC og ASC syntaks

Eksempel: - For DESC (synkende)

VELG * FRA tabell1 BESTILLE PÅ t3 DESC; For ASC (stigende) VELG * FRA tabell1 BESTILLE AV t3 ASC;

MySQL GROUP BY og HAR Klausul-kommandoen

Gruppe av

Kommando Beskrivelse
VELG utsagn… GROUP BY column_name1 [, column_name2,…] [HAVING condition]; GROUP BY Syntaks

Eksempel for gruppering av en enkelt kolonne: - VELG t4 FRA tabell1;

VELG t4 FRA tabell1 GRUPP AV t4; (antar at vi ønsker å få de unike verdiene for t4.)

Eksempel for gruppering av flere kolonner: - VELG t1_id, t4 FRA tabell2;

VELG t1_id, t4 FRA tabell2 GROUP BY t1_id, t4; (bruker gruppe etter metode)

Gruppering og samlede funksjoner

Kommando Beskrivelse
VELG t2, TELLE (t1) FRA tabell1 GRUPPE T2; Anta at vi vil ha totalt antall t2-kolonneverdier i databasen vår.

HAR klausul

Kommando Beskrivelse
VELG * FRA table2 GROUP BY t1_id, t4 HAR T1_id = x1; alle t4 for tabell2 t1 id x1. Vi bruker følgende skript for å oppnå resultatene.

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

% prosentandelen jokertegn kommandert i MySQL

Kommando Beskrivelse
VELG utsagn… HVOR feltnavn LIKE xxx%; grunnleggende syntaks for% prosent jokertegn

Eksempel: - vi bruker prosentvis jokertegn til å utføre en mønsterkamp på begge sider av ordet "X1" som del t2 i tabell1 VELG * FRA tabell1 HVOR t2 LIKE% X1%;

VELG * FRA tabell1 HVOR t2 LIKE% X1; (kun prosentandelen jokertegn i begynnelsen av søkekriteriene) VELG * FRA tabell1 HVOR t2 LIKER X1%; (prosentvis jokertegn til slutten av det angitte mønsteret som skal matches.)

_ understreker jokertegnkommandoen

Kommando Beskrivelse
VELG * FRA tabell1 HVOR t3 LIKE x2_; hele tabellen1 som var t3 i året "x2"

IKKE som jokertegnkommando

Kommando Beskrivelse
VELG * FRA tabell1 HVOR t3 IKKE LIKER X2_; Anta at vi ønsker å få tabell1 som ikke var t3 i året X2_

Unnslippe søkeordet jokertegnkommando

Kommando Beskrivelse
LIKE 67 # %% ESCAPE #; vi vil se etter strengen "67%"

MYSQL Regular Expressions (REGEXP)

Kommando Beskrivelse
VELG utsagn… HVOR feltnavn REGEXP mønster; grunnleggende syntaks for vanlig uttrykk

Eksempel: - hele tabellen1 t1 som har ordet X1. Det spiller ingen rolle om "X1" er i begynnelsen, midten eller slutten av tittelen. VELG * FRA tabell1 HVOR t1 REGEXP X1;

Vanlige uttrykk Metategn

Kommando Beskrivelse
* Asterisk (*) metakarakter brukes til å matche null (0) eller flere forekomster av strengene foran den
+ Pluss (+) metakarakter brukes til å matche en eller flere forekomster av strenger som er forut for den.
? Spørsmålet (?) Metakarakter brukes til å matche null (0) eller ett tilfelle av strengene som er forut for det.
. Punktet (.) Metategn brukes til å matche et enkelt tegn, unntatt en ny linje.
[abc] Charlisten [abc] brukes til å matche noen av de vedlagte tegnene.
[^abc] Charlisten [abc] brukes til å matche alle tegn unntatt de vedlagte.
[A-Z] [AZ] brukes til å matche alle store bokstaver
[a-z] [Az] brukes til å matche små bokstaver
[0-9] [0-9] brukes til å matche et hvilket som helst siffer fra 0 til 9.
^ Innskuddet (^) brukes til å starte kampen i begynnelsen.
| Den vertikale linjen (|) brukes til å isolere alternativer.
[[:<:]] [[: <:]] Samsvarer med begynnelsen av ord.
[[:>:]] [[:::]] Samsvarer med slutten av ordene.
[:class:] [: Klasse:] samsvarer med en tegnklasse, dvs. [: alfa:] for å matche bokstaver, [: mellomrom:] for å matche hvite mellomrom, [: punkt::] er samsvarstegn og [: øvre:] for overklassebokstaver.

SQL Funksjonskommandoer

Strengfunksjoner

Kommando Beskrivelse
VELG t1_id, t2, UCASE (t2) FRA tabell1; "UCASE" -funksjonen for å gjøre det. Det tar en streng som parameter og konverterer alle bokstavene til store bokstaver.

Numeriske funksjoner

Kommando Beskrivelse Eksempel
DIV Heltall divisjon VELG 23 DIV 6;
/ Inndeling VELG 23/6;
- Subtraksjon VELG 23 - 6;
+ Addisjon VELG 23 + 6;
* Multiplikasjon VELG 23 * 6 AS multiplikasjonsresultat;
% or MOD Modulus VELG 23% 6; eller VELG 23 MOD 6;
Floor denne funksjonen fjerner desimalplasser fra et tall og avrunder det til nærmeste laveste tall. VELG GULV (23/6) AS etasjeresultat;
Round denne funksjonen avrunder et tall med desimaler til nærmeste hele tall. VELG RUND (23/6) SOM runde-resultat;

Lagrede funksjoner

Kommando Beskrivelse
OPPRETT FUNKSJON sf_name ([parameter (er)]) RETURER datatype DETERMINISTISKE UTTALELSER grunnleggende syntaks for å lage en lagret funksjon
OPPRETT FUNKSJON sf_name ([parameter (er)]) Obligatorisk og forteller MySQL-serveren å opprette en funksjon med navnet 'sf_name' med valgfrie parametere definert i parentes.
RETURER datatypen Obligatorisk og spesifiserer datatypen som funksjonen skal returnere.
DETERMINISTISK Funksjonen vil returnere de samme verdiene hvis de samme argumentene blir gitt til den.
UTTALELSER Prosedyrekoden som funksjonen utfører.

MySQL Aggregate-funksjonskommandoer

Kommando Beskrivelse
VELG TELL (t1_id) FRA tabell1 HVOR t1_id = 2; COUNT-funksjon
VELG MIN (t3) FRA tabell2; MIN-funksjon
VELG MAKS (t3) FRA tabell2; MAX-funksjon
VELG SUM (t4) FRA tabell3; SUM-funksjon
VELG AVG (t4) FRA tabell3; AVG-funksjon

MySQL ER NULL & ER IKKE NULL-kommandoer

Kommando Beskrivelse
VELG TELL (t3) FRA tabell1; (hvis t3 har nullverdi tilstede som ikke teller) Null som en verdi
CREATE TABLE table2 (t1_number int NOT NULL, t2_names varchar (255), t3 varchar (6)); IKKE NULL Verdier
comlumn_name IS NULL comlumn_name NOT NULL NULL Nøkkelord Grunnleggende syntaks
VELG * FRA tabell1 HVOR t2_nummer ER NULL; Eksempel på IS NULL
VELG * FRA tabell1 HVOR t2_nummer IKKE ER NULL; Eksempel på ER IKKE NULL

MySQL AUTO_INCREMENT-kommandoer

Kommando Beskrivelse
OPPRETT TABELL tabell1 (t1_id int (11) AUTO_INCREMENT, t2_name varchar (150) STANDARD NULL, t3 varchar (500) STANDARD NULL, PRIMÆR NØKKEL (t1_id)); Automatisk økning av syntaksen

MYSQL - ALTER, DROP, RENAME, MODIFY

Kommando Beskrivelse
ALTER TABLE tabellnavn LEGG TIL KOLONN kolonnenavn datatype; Alter-syntaks
DROP TABLE sample_table; DROP TABLE syntaks
RENAME TABLE current_table_name TO new_table_name; RENAME COMMAND-syntaksen
ALTER TABEL tabell1 ENDRE KOLONN t1_names t1name char (250) IKKE NULL; ENDRE Nøkkelord
ALTER TABLE tabell1MODIFISER t1navn char (50) IKKE NULL; ENDRE NøkkelORD
ALTER TABELL tabell1 LEGG T4 dato NULL ETTER t3; ETTER Nøkkelord

MySQL LIMIT & OFFSET

Kommando Beskrivelse
VELG {feltnavn (er) | *} FRA tabellnavn (er) [WHERE condition] LIMIT N; BEGRENS syntaks for søkeord
VELG * FRA tabell1 GRENSE 1, 2; OFF SET i LIMIT-spørringen

MySQL SubQuery-kommandoer:

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

MySQL JOINS-kommandoer

Kommando Beskrivelse
VELG * FRA tabell1 CROSS JOIN-tabell2 Kryss JOIN
VELG table1.t1, table1.t2, table2.t1 FRA table1, table2 WHERE table2.id = table1.table2_id INNRE MEDLEM
VELG A.t1, B.t2, B.t3 FRA tabell2 SOM EN VENSTRE JOIN-tabell1 AS B PÅ B.tabell2_id = A.id VENSTRE BLI MEDLEM
VELG A.t1, A.t2, B.t3 FRA tabell1 SOM EN HØYRE FORENING tabell2 AS B PÅ B.id = A.table2_id RIKTIG BLI MED
VELG A.t1, B.t2, B.t3 FRA tabell2 SOM EN VENSTRE FØRSTE tabell1 SOM B BRUKER (tabell2_id) "ON" og "USING" klausuler

MySQL UNION-kommandoer

Kommando Beskrivelse
VELG kolonne1, kolonne2 FRA tabell1 UNION syntaks
VELG kolonne1, kolonne2 FRA tabell2; UNION DISTINCT

MySQL i Views-kommandoer

Kommando Beskrivelse
CREATE VIEW view_name AS SELECT setning; Visningssyntaks
DROP VIEW general_v_movie_rentals; Slippende utsikt

MySQL indeks kommandoer

Kommando Beskrivelse
CREATE INDEX id_index ON table_name (column_name); Legg til indeks grunnleggende syntaks
DROP INDEX index_id ON table_name; Slipp indeks grunnleggende syntaks

Interessante artikler...