In dit SQL Query-spiekbriefje leert u
Maak database- en tabelopdrachten
Opdracht | Omschrijving |
DATABASE DATABASE MAKEN; | Maak een database |
CREATE DATABASE BESTAAT NIET database1; | INDIEN NIET BESTAAT kunt u de MySQL-server instrueren om het bestaan van een database met een vergelijkbare naam te controleren voordat u een database aanmaakt. |
DATABASE MAKEN INDIEN NIET BESTAAT database1 CHARACTER SET latin1 COLLATE latin1_swedish_ci | de tekenset Latin1 gebruikt de sortering latin1_swedish_ci, wat de Zweedse hoofdlettergevoelige volgorde is. |
TOON DATABASES | U kunt een lijst met bestaande databases zien door de volgende SQL-opdracht uit te voeren. |
CREATE TABLE [INDIEN NIET BESTAAT] TableName (veldnaam dataType [optionele parameters]) ENGINE = Storage Engine; | Maak een tabelsyntaxis |
GEGEVENS TYPES
Numerieke gegevenstypen
Opdracht | Omschrijving |
TINYINT () | -128 tot 127 normaal 0 tot 255 ONGETEKEND. |
KLEIN () | -32768 tot 32767 normaal 0 tot 65535 NIET ONDERTEKEND. |
GEMIDDELD () | -8388608 tot 8388607 normaal 0 tot 16777215 ONGETEKEND. |
INT () | -2147483648 tot 2147483647 normaal 0 tot 4294967295 ONGETEKEND. |
GROOT () | -9223372036854775808 tot 9223372036854775807 normaal 0 tot 18446744073709551615 ONGETEKEND. |
VLOTTER | Een klein getal bij benadering met een drijvende komma. |
DUBBEL (,) | Een groot getal met een drijvende komma. |
DECIMAAL (,) | EEN DUBBEL opgeslagen als een string, rekening houdend met een vast decimaalteken. Keuze voor het opslaan van valutawaarden. |
Tekstgegevenstypen
Opdracht | Omschrijving |
CHAR () | Een vast gedeelte van 0 tot 255 tekens lang. |
VARCHAR () | Een variabele sectie van 0 tot 255 tekens lang. |
TINYTEXT | Een tekenreeks met een maximale lengte van 255 tekens. |
TEKST | Een tekenreeks met een maximale lengte van 65535 tekens. |
BLOB | Een tekenreeks met een maximale lengte van 65535 tekens. |
MEDIUMTEKST | Een tekenreeks met een maximale lengte van 16777215 tekens. |
MEDIUMBLOB | Een tekenreeks met een maximale lengte van 16777215 tekens. |
LONGTEXT | Een tekenreeks met een maximale lengte van 4294967295 tekens. |
LONGBLOB | Een tekenreeks met een maximale lengte van 4294967295 tekens. |
Datum / tijd-gegevenstypen
Opdracht | Omschrijving |
DATUM | JJJJ-MM-DD |
DATUM TIJD | JJJJ-MM-DD UU: MM: SS |
TIJDSTAMP | JJJJMMDDUUMMSS |
TIJD | UU: MM: SS |
Andere gegevenstypen
Opdracht | Omschrijving |
ENUM | Om tekstwaarde op te slaan die is gekozen uit een lijst met voorgedefinieerde tekstwaarden. |
SET | Dit wordt ook gebruikt voor het opslaan van tekstwaarden die zijn gekozen uit een lijst met voorgedefinieerde tekstwaarden. Het kan meerdere waarden hebben. |
BOOL | Synoniem voor TINYINT (1), gebruikt om Booleaanse waarden op te slaan |
BINAIR | Net als bij CHAR is het verschil dat teksten in binair formaat worden opgeslagen. |
VARBINAIR | Net als bij VARCHAR is het verschil dat teksten in binair formaat worden opgeslagen. |
MySQL SELECT-instructieopdracht
Opdracht | Omschrijving |
SELECTEER [DISTINCT | ALL] {* | [fieldExpression [AS newName]} FROM tableName [alias] [WHERE condition] [GROUP BY fieldName (s)] [HAVING condition] ORDER BY fieldName (s) | Syntaxis van SQL SELECT-instructie |
SELECTEER * UIT table1; | selecteer de tafel |
SELECTEER t1, t2, t3, t4 UIT tabel1; | we zijn alleen geïnteresseerd in het verkrijgen van alleen de velden t1, t2, t3 en t4. |
SELECTEER Concat (t1, (, t3,)), t4 UIT table2; | Lijst met table2 ophalen |
SELECT kolomnaam | waarde | expressie [AS] alias_naam; | Syntaxis van aliasveldnamen |
MySQL WHERE-clausule met AND, OR, IN, NOT IN-opdrachten
Opdracht | Omschrijving |
SELECT * FROM tableName WHERE voorwaarde; | WHERE-clausule Syntax |
SELECTEER * UIT table1 WAAR t1 = 2 EN t2 = 2008; | WHERE-clausule gecombineerd met - AND LOGICAL Operator |
SELECTEER * UIT table1 WAAR t1 = 1 OF t1 = 2; | WHERE-clausule gecombineerd met - OF LOGISCHE Operator |
SELECTEER * UIT table2 WAAR t1 IN (1,2,3); | WHERE-clausule gecombineerd met - IN Sleutelwoord |
SELECTEER * UIT table2 WAAR t1 NIET IN (1,2,3); | WHERE-clausule gecombineerd met - NOT IN Trefwoord |
SELECTEER * UIT table2 WAAR t3 = Vrouw; | WHERE-clausule gecombineerd met Equal (=) naar COMPARISON OPERATORS |
SELECTEER * UIT table3 WAAR t3> 2000; | WHERE-clausule gecombineerd met groter dan (>) naar COMPARISON OPERATORS |
SELECTEER * UIT table1 WAAR t1 <> 1; | WHERE-clausule gecombineerd met niet gelijk aan (<>) COMPARISON OPERATORS |
MySQL-opdracht INSERT INTO Table
Opdracht | Omschrijving |
INVOEGEN IN tabelnaam (kolom_1, kolom_2,…) WAARDEN (waarde_1, waarde_2,…); | basissyntaxis van de SQL INSERT-opdracht |
VOEG IN table1 (t1, t2, t3, t4) WAARDEN (X1, X2, X3, X4); | VOEG gegevens in de tabel in |
INSERT IN table_1 SELECT * FROM table_2; | Invoegen in een tafel vanuit een andere tafel |
MySQL DELETE-opdracht
Opdracht | Omschrijving |
VERWIJDEREN UIT tabelnaam [WHERE voorwaarde]; | Verwijder een rij in MySQL |
Voorbeeld: - VERWIJDEREN UIT table1 WAAR table1_id = 18;
(verwijder de invoer van 18-cijferige id-vorm table1.) VERWIJDER UIT table1 WAAR table1_id IN (20,21); (verwijder invoer van ID's met 20 en 21 cijfers in tabel 1)
MySQL Update-opdracht
Opdracht | Omschrijving |
UPDATE table_name SET column_name = nieuwe_waarde [WHERE voorwaarde]; | update opdrachtsyntaxis |
Voorbeeld: - SELECT * FROM table1 WHERE t1 = 1;
(haal het record op voor t1 = 1) UPDATE table1 SET t4 = X1 WAAR t1 = 1; (update de t4-waarde in de tabel)
ORDER BY in MySQL: DESC & ASC-opdracht
Opdracht | Omschrijving |
SELECT-instructie ... [WHERE-voorwaarde | GROUP BY field_name (s) HAVING voorwaarde] ORDER BY field_name (s) [ASC | DESC]; | Ordenen per clausule basissyntaxis |
SELECTEER {fieldName (s) | *} FROM tableName (s) [WHERE condition] ORDER BY fieldname (s) ASC / DESC [LIMIT N] | DESC- en ASC-syntaxis |
Voorbeeld: - Voor DESC (aflopend)
SELECTEER * UIT table1 ORDER BY t3 DESC; Voor ASC (oplopend) SELECT * FROM table1 ORDER BY t3 ASC;
MySQL GROUP BY en HAVING-clausule
Groeperen op
Opdracht | Omschrijving |
SELECT statements… GROUP BY column_name1 [, column_name2,…] [HAVING condition]; | GROEP BY Syntax |
Voorbeeld voor het groeperen van een enkele kolom: - SELECTEER t4 UIT tabel1;
SELECTEER t4 UIT tabel1 GROEP OP t4; (stel dat we de unieke waarden voor t4 willen krijgen.)
Voorbeeld voor het groeperen van meerdere kolommen: - SELECT t1_id, t4 FROM table2;
SELECTEER t1_id, t4 UIT table2 GROUP BY t1_id, t4; (gebruik groep op methode)
Functies groeperen en aggregeren
Opdracht | Omschrijving |
SELECTEER t2, AANTAL (t1) UIT table1 GROEP BY t2; | Stel dat we het totale aantal t2-kolomwaarden in onze database willen hebben. |
HAVING-clausule
Opdracht | Omschrijving |
SELECTEER * UIT table2 GROEP DOOR t1_id, t4 MET t1_id = x1; | alle t4 voor table2 t1 id x1. We zouden het volgende script gebruiken om onze resultaten te bereiken. |
MySQL Wildcards-opdrachten voor Like, NOT Like, Escape, (%), (_)
% het percentage jokertekens in MySQL
Opdracht | Omschrijving |
SELECT statements… WHERE fieldname LIKE xxx%; | basissyntaxis voor% percentage jokerteken |
Voorbeeld: - we zouden het percentage jokerteken gebruiken om een patroonovereenkomst uit te voeren aan beide zijden van het woord "X1" als deel t2 van tabel1 SELECTEER * UIT tabel1 WAAR t2 LIKE% X1%;
SELECTEER * UIT table1 WAAR t2 ZOALS% X1; (alleen het percentage jokerteken aan het begin van de zoekcriteria) SELECT * FROM table1 WHERE t2 LIKE X1%; (het percentage jokerteken aan het einde van het opgegeven patroon dat moet worden vergeleken.)
_ underscore jokerteken commando
Opdracht | Omschrijving |
SELECTEER * UIT table1 WAAR t3 ALS x2_; | alle table1 die t3 waren in het jaar "x2" |
NIET zoals jokerteken
Opdracht | Omschrijving |
SELECTEER * UIT table1 WAAR t3 NIET ALS X2_; | Stel dat we tabel1 willen krijgen die niet t3 was in het jaar X2_ |
Escape trefwoord jokerteken commando
Opdracht | Omschrijving |
ALS 67 # %% ESCAPE #; | we willen controleren op de string "67%" |
MYSQL reguliere expressies (REGEXP)
Opdracht | Omschrijving |
SELECT statements… WHERE veldnaam REGEXP patroon; | basissyntaxis van reguliere expressie |
Voorbeeld: - alle table1 t1 met het woord X1 erin. Het maakt niet uit of de "X1" aan het begin, midden of einde van de titel staat. SELECTEER * UIT table1 WAAR t1 REGEXP X1;
Reguliere expressie Metatekens
Opdracht | Omschrijving |
* | Het metateken asterisk (*) wordt gebruikt om overeen te komen met nul (0) of meer instanties van de tekenreeksen die eraan voorafgaan |
+ | Het plus (+) metateken wordt gebruikt om overeen te komen met een of meer instanties van tekenreeksen die eraan voorafgaan. |
? | Het metateken van de vraag (?) Wordt gebruikt om nul (0) of één instantie van de tekenreeksen die eraan voorafgaan, te matchen. |
. | Het metateken punt (.) Wordt gebruikt om een willekeurig teken te zoeken, met uitzondering van een nieuwe regel. |
[abc] | De charlist [abc] wordt gebruikt om een van de ingesloten karakters te matchen. |
[^abc] | De charlist [abc] wordt gebruikt om alle karakters te matchen met uitzondering van de ingesloten karakters. |
[A-Z] | De [AZ] wordt gebruikt om overeen te komen met hoofdletters |
[a-z] | De [az] wordt gebruikt om overeen te komen met kleine letters |
[0-9] | De [0-9] wordt gebruikt om een cijfer van 0 tot en met 9 te matchen. |
^ | Het caret (^) wordt gebruikt om de wedstrijd aan het begin te starten. |
| | De verticale balk (|) wordt gebruikt om alternatieven te isoleren. |
[[:<:]] | De [[: <:]] komt overeen met het begin van woorden. |
[[:>:]] | De [[:>:]] komt overeen met het einde van woorden. |
[:class:] | De [: class:] komt overeen met een karakterklasse, dwz [: alpha:] om letters te matchen, [: spatie:] om overeen te komen met witruimte, [: punct:] is match interpunctie en [: upper:] voor letters uit de hogere klasse. |
SQL Functions-opdrachten
String-functies
Opdracht | Omschrijving |
SELECTEER t1_id, t2, UCASE (t2) UIT table1; | de "UCASE" -functie om dat te doen. Het neemt een string als parameter en converteert alle letters naar hoofdletters. |
Numerieke functies
Opdracht | Omschrijving | Voorbeeld |
DIV | Geheel getal divisie | KIES 23 DIV 6; |
/ | Divisie | KIES 23/6; |
- | Aftrekken | SELECTEER 23 - 6; |
+ | Toevoeging | KIES 23 + 6; |
* | Vermenigvuldiging | SELECTEER 23 * 6 ALS multiplication_result; |
% or MOD | Modulus | SELECTEER 23% 6; of KIES 23 MOD 6; |
Floor | deze functie verwijdert decimalen van een getal en rondt dit af naar het dichtstbijzijnde laagste getal. | SELECTEER VLOER (23/6) ALS floor_result; |
Round | deze functie rondt een getal met decimalen af op het dichtstbijzijnde gehele getal. | KIES RONDE (23/6) ALS round_result; |
Opgeslagen functies
Opdracht | Omschrijving |
FUNCTIE MAKEN sf_name ([parameter (s)]) RETURNS gegevenstype DETERMINISTIC STATEMENTS | basissyntaxis voor het maken van een opgeslagen functie |
FUNCTIE MAKEN sf_name ([parameter (s)]) | Verplicht en vertelt de MySQL-server om een functie met de naam 'sf_name' te maken met optionele parameters die tussen haakjes zijn gedefinieerd. |
RETURNS-gegevenstype | Verplicht en specificeert het gegevenstype dat de functie moet retourneren. |
BEPALEND | De functie retourneert dezelfde waarden als dezelfde argumenten eraan worden verstrekt. |
VERKLARINGEN | De procedurele code die de functie uitvoert. |
MySQL Aggregate-functieopdrachten
Opdracht | Omschrijving |
SELECTEER AANTAL (t1_id) UIT table1 WAAR t1_id = 2; | COUNT functie |
SELECTEER MIN (t3) UIT table2; | MIN-functie |
SELECTEER MAX (t3) UIT table2; | MAX-functie |
SELECTEER SOM (t4) UIT table3; | SOM-functie |
SELECTEER AVG (t4) UIT table3; | AVG-functie |
MySQL IS NULL & IS NIET NULL-opdrachten
Opdracht | Omschrijving |
SELECTEER AANTAL (t3) UIT table1; (als t3 een null-waarde heeft die niet telt) | Null als waarde |
CREATE TABLE table2 (t1_number int NOT NULL, t2_names varchar (255), t3 varchar (6)); | NOT NULL Waarden |
comlumn_name IS NULL comlumn_name NOT NULL | NULL Trefwoorden Basissyntaxis |
SELECTEER * UIT tabel1 WAAR t2_getal NULL IS; | Voorbeeld van IS NULL |
SELECTEER * UIT tabel1 WAAR t2_getal NIET NULL IS; | Voorbeeld van IS NOT NULL |
MySQL AUTO_INCREMENT-opdrachten
Opdracht | Omschrijving |
CREATE TABLE table1 (t1_id int (11) AUTO_INCREMENT, t2_name varchar (150) STANDAARD NULL, t3 varchar (500) STANDAARD NULL, PRIMAIRE SLEUTEL (t1_id)); | Syntaxis voor automatisch verhogen |
MYSQL - ALTER, DROP, RENAME, WIJZIGEN
Opdracht | Omschrijving |
ALTER TABLE table_name ADD COLUMN column_name data_type; | Wijzig syntaxis |
DROP TABLE sample_table; | Syntaxis van DROP TABLE |
RENAME TABLE current_table_name TO new_table_name; | RENAME COMMAND syntaxis |
ALTER TABLE table1 CHANGE COLUMN t1_names t1name char (250) NOT NULL; | WIJZIG ZOEKWOORD |
ALTER TABLE table1MODIFY t1name char (50) NOT NULL; | WIJZIG HET ZOEKWOORD |
ALTER TABLE table1 ADD t4 date NULL NA t3; | NA ZOEKWOORD |
MySQL LIMIT & OFFSET
Opdracht | Omschrijving |
SELECTEER {veldnaam (-namen) | *} FROM tableName (s) [WHERE voorwaarde] LIMIT N; | LIMIT trefwoord syntaxis |
SELECTEER * UIT table1 LIMIET 1, 2; | OFF SET in de LIMIT-query |
MySQL SubQuery-opdrachten:
Opdracht | Omschrijving |
SELECTEER t1_naam VAN table1 WAAR category_id = (SELECTEER MIN (t1_id) van table2); | subquery's |
MySQL JOINS-opdrachten
Opdracht | Omschrijving |
SELECTEER * UIT table1 CROSS JOIN table2 | Kruis JOIN |
SELECTEER table1.t1, table1.t2, table2.t1 FROM table1, table2 WAAR table2.id = table1.table2_id | BINNENKOM |
SELECTEER A.t1, B.t2, B.t3 UIT table2 ALS LINKS JOIN table1 AS B OP B.table2_id = A.id | LINKS WORDT LID |
SELECTEER A.t1, A.t2, B.t3 UIT table1 ALS EEN RECHTS JOIN table2 AS B OP B.id = A.table2_id | RECHTS MEEDOEN |
SELECTEER A.t1, B.t2, B.t3 UIT table2 ALS EEN LINKS JOIN table1 AS B GEBRUIKEN (table2_id) | "AAN" en "GEBRUIK" -clausules |
MySQL UNION-opdrachten
Opdracht | Omschrijving |
SELECTEER column1, column2 FROM table1 | UNION-syntaxis |
SELECTEER column1, column2 FROM table2; | UNION DISTINCT |
MySQL in Views-opdrachten
Opdracht | Omschrijving |
CREATE VIEW view_name AS SELECT-instructie; | Geeft syntaxis weer |
DROP VIEW general_v_movie_rentals; | Uitzichten laten vallen |
MySQL Index-opdrachten
Opdracht | Omschrijving |
CREATE INDEX id_index ON table_name (column_name); | Voeg de basissyntaxis van de index toe |
DROP INDEX index_id ON table_name; | Verwijder de basissyntaxis van de index |