Aide-mémoire SQL (mise à jour 2021)

Table des matières

Dans cette feuille de triche SQL Query, vous apprendrez

Créer des commandes de base de données et de table

Commander Description
CRÉER UNE BASE DE DONNÉES DE BASE DE DONNÉES; Créer une base de données
CREATE DATABASE NOT EXISTS database1; IF NOT EXISTS vous permet de demander au serveur MySQL de vérifier l'existence d'une base de données avec un nom similaire avant de créer la base de données.
CREATE DATABASE IF NOT EXISTS database1 CHARACTER SET latin1 COLLATE latin1_swedish_ci le jeu de caractères Latin1 utilise le classement latin1_swedish_ci qui est l'ordre suédois insensible à la casse.
AFFICHER LES BASES DE DONNÉES Vous pouvez voir la liste des bases de données existantes en exécutant la commande SQL suivante.
CREATE TABLE [IF NOT EXISTS] TableName (fieldname dataType [paramètres facultatifs]) ENGINE = Storage Engine; Créer une syntaxe de table

TYPES DE DONNÉES

Types de données numériques

Commander Description
TINYINT () -128 à 127 normal 0 à 255 UNSIGNED.
PETITE INTELLIGENCE () -32768 à 32767 normal 0 à 65535 UNSIGNED.
MOYENNEINT () -8388608 à 8388607 normal 0 à 16777215 NON SIGNÉ.
INT () -2147483648 à 2147483647 normal 0 à 4294967295 NON SIGNÉ.
GRAND () -9223372036854775808 à 9223372036854775807 normal 0 à 18446744073709551615 NON SIGNÉ.
FLOTTER Un petit nombre approximatif avec une virgule décimale flottante.
DOUBLE( , ) Un grand nombre avec une virgule décimale flottante.
DÉCIMAL( , ) Un DOUBLE stocké sous forme de chaîne, permettant un point décimal fixe. Choix pour stocker les valeurs monétaires.

Types de données texte

Commander Description
CHAR () Une section fixe de 0 à 255 caractères.
VARCHAR () Une section variable de 0 à 255 caractères.
TINYTEXT Une chaîne d'une longueur maximale de 255 caractères.
TEXTE Une chaîne d'une longueur maximale de 65 535 caractères.
GOUTTE Une chaîne d'une longueur maximale de 65 535 caractères.
MEDIUMTEXT Une chaîne d'une longueur maximale de 16777215 caractères.
BLOB MOYEN Une chaîne d'une longueur maximale de 16777215 caractères.
LONGTEXTE Une chaîne d'une longueur maximale de 4294967295 caractères.
LONGBLOB Une chaîne d'une longueur maximale de 4294967295 caractères.

Types de données Date / Heure

Commander Description
DATE AAAA-MM-JJ
DATETIME AAAA-MM-JJ HH: MM: SS
HORAIRE AAAAMMJJHHMMSS
TEMPS HH: MM: SS

Autres types de données

Commander Description
ENUM Pour stocker la valeur de texte choisie dans une liste de valeurs de texte prédéfinies.
ENSEMBLE Ceci est également utilisé pour stocker des valeurs de texte choisies dans une liste de valeurs de texte prédéfinies. Il peut avoir plusieurs valeurs.
BOOL Synonyme de TINYINT (1), utilisé pour stocker des valeurs booléennes
BINAIRE Semblable à CHAR, la différence est que les textes sont stockés au format binaire.
VARBINAIRE Semblable à VARCHAR, la différence est que les textes sont stockés au format binaire.

Commande d'instruction MySQL SELECT

Commander Description
SELECT [DISTINCT | ALL] {* | [fieldExpression [AS newName]} FROM tableName [alias] [condition WHERE] [GROUP BY fieldName (s)] [HAVING condition] ORDER BY fieldName (s) Syntaxe de l'instruction SQL SELECT
SELECT * FROM table1; sélectionnez la table
SELECT t1, t2, t3, t4 FROM table1; nous ne sommes intéressés qu'à obtenir uniquement les champs t1, t2, t3 et t4.
SELECT Concat (t1, (, t3,)), t4 FROM table2; Obtenir la liste de table2
SELECT nom_colonne | valeur | expression [AS] nom_alias; Syntaxe des noms de champ d'alias

Clause MySQL WHERE avec les commandes AND, OR, IN, NOT IN

Commander Description
SELECT * FROM tableName WHERE condition; Syntaxe de la clause WHERE
SELECT * FROM table1 O t1 = 2 ET t2 = 2008; Clause WHERE combinée avec - AND LOGICAL Operator
SELECT * FROM table1 WHERE t1 = 1 OU t1 = 2; Clause WHERE combinée avec - Opérateur OR LOGICAL
SELECT * FROM table2 WHERE t1 IN (1,2,3); Clause WHERE combinée avec le mot-clé - IN
SELECT * FROM table2 WHERE t1 NOT IN (1,2,3); Clause WHERE combinée avec le mot clé - NOT IN
SELECT * FROM table2 WHERE t3 = Femelle; Clause WHERE combinée avec Equal (=) à COMPARISON OPERATORS
SELECT * FROM table3 WHERE t3> 2000; Clause WHERE combinée avec supérieur à (>) à COMPARISON OPERATORS
SELECT * FROM table1 WHERE t1 <> 1; Clause WHERE combinée avec Not Equal to (<>) COMPARISON OPERATORS

Table de commande MySQL INSERT INTO

Commander Description
INSERT INTO nom_table (colonne_1, colonne_2,…) VALEURS (valeur_1, valeur_2,…); syntaxe de base de la commande SQL INSERT
INSÉRER DANS table1 (t1, t2, t3, t4) VALEURS (X1, X2, X3, X4); INSÉRER les données dans la table
INSERT INTO table_1 SELECT * FROM table_2; Insertion dans une table à partir d'une autre table

Commande MySQL DELETE

Commander Description
DELETE FROM nom_table [condition WHERE]; Supprimer une ligne dans MySQL

Exemple: - DELETE FROM table1 WHERE table1_id = 18;

(effacez l'entrée de la table1 de forme d'id de 18 nombres.) DELETE FROM table1 WHERE table1_id IN (20,21); (supprimer l'entrée du tableau de formulaire d'identification des numéros 20 et 211)

Commande de mise à jour MySQL

Commander Description
UPDATE nom_table SET nom_colonne = nouvelle_valeur [condition WHERE]; syntaxe de la commande de mise à jour

Exemple: - SELECT * FROM table1 WHERE t1 = 1;

(récupérer l'enregistrement pour t1 = 1) UPDATE table1 SET t4 = X1 WHERE t1 = 1; (mettre à jour la valeur t4 dans le tableau)

ORDER BY dans MySQL: commande DESC & ASC

Commander Description
Instruction SELECT… [condition WHERE | GROUP BY nom (s) champ (s) HAVING condition] ORDER BY nom (s) champ [ASC | DESC]; Trier par la syntaxe de base de la clause
SELECT {fieldName (s) | *} FROM nom (s) table (s) [condition WHERE] ORDER BY nom (s) de champ ASC / DESC [LIMIT N] Syntaxe DESC et ASC

Exemple: - Pour DESC (décroissant)

SELECT * FROM table1 ORDER BY t3 DESC; Pour ASC (croissant) SELECT * FROM table1 ORDER BY t3 ASC;

Commande MySQL GROUP BY et HAVING Clause

Par groupe

Commander Description
Instructions SELECT… GROUP BY nom_colonne1 [, nom_colonne2,…] [HAVING condition]; GROUP BY Syntaxe

Exemple de regroupement d'une seule colonne: - SELECT t4 FROM table1;

SELECT t4 FROM table1 GROUP BY t4; (supposons que nous voulons obtenir les valeurs uniques pour t4.)

Exemple de regroupement de plusieurs colonnes: - SELECT t1_id, t4 FROM table2;

SELECT t1_id, t4 FROM table2 GROUP BY t1_id, t4; (en utilisant la méthode group by)

Fonctions de regroupement et d'agrégation

Commander Description
SELECT t2, COUNT (t1) FROM table1 GROUP BY t2; Supposons que nous voulions le nombre total de valeurs de colonne t2 dans notre base de données.

Clause HAVING

Commander Description
SELECT * FROM table2 GROUP BY t1_id, t4 HAVING t1_id = x1; tous les t4 pour table2 t1 id x1. Nous utiliserions le script suivant pour obtenir nos résultats.

Commandes MySQL Wildcards pour Like, NOT Like, Escape, (%), (_)

% le pourcentage de caractères génériques commandés dans MySQL

Commander Description
Instructions SELECT… WHERE fieldname LIKE xxx%; syntaxe de base pour le caractère générique% pourcentage

Exemple: - nous utiliserions le caractère générique de pourcentage pour effectuer une correspondance de modèle des deux côtés du mot "X1" dans la partie t2 de la table1 SELECT * FROM table1 WHERE t2 LIKE% X1%;

SELECT * FROM table1 O t2 COMME% X1; (le caractère générique de pourcentage au début des critères de recherche uniquement) SELECT * FROM table1 WHERE t2 LIKE X1%; (le pourcentage générique à la fin du modèle spécifié à mettre en correspondance.)

_ commande de caractère générique de soulignement

Commander Description
SELECT * FROM table1 WHERE t3 LIKE x2_; tous les tableaux1 qui étaient t3 dans l'année "x2"

PAS comme la commande générique

Commander Description
SELECT * FROM table1 WHERE t3 PAS COMME X2_; Supposons que nous voulions obtenir la table1 qui n'était pas t3 dans l'année X2_

Commande de caractères génériques de mot-clé d'échappement

Commander Description
COMME 67 # %% ESCAPE #; nous voulons vérifier la chaîne "67%"

Expressions régulières MYSQL (REGEXP)

Commander Description
Instructions SELECT… WHERE fieldname REGEXP pattern; syntaxe de base de l'expression régulière

Exemple: - toutes les tables1 t1 contenant le mot X1. Peu importe que le "X1" soit au début, au milieu ou à la fin du titre. SELECT * FROM table1 WHERE t1 REGEXP X1;

Métacaractères d'expression régulière

Commander Description
* Le métacaractère astérisque (*) est utilisé pour correspondre à zéro (0) ou plusieurs instances des chaînes qui le précèdent
+ Le métacaractère plus (+) est utilisé pour faire correspondre une ou plusieurs instances de chaînes le précédant.
? Le métacaractère question (?) Est utilisé pour correspondre à zéro (0) ou à une instance des chaînes qui le précèdent.
. Le métacaractère point (.) Est utilisé pour faire correspondre n'importe quel caractère unique à l'exception d'une nouvelle ligne.
[abc] La charlist [abc] est utilisée pour correspondre à l'un des caractères inclus.
[^abc] La charlist [abc] est utilisée pour faire correspondre tous les caractères à l'exception de ceux inclus.
[A-Z] Le [AZ] est utilisé pour correspondre à n'importe quelle lettre majuscule
[a-z] Le [az] est utilisé pour correspondre à n'importe quelle lettre minuscule
[0-9] Le [0-9] est utilisé pour faire correspondre n'importe quel chiffre de 0 à 9.
^ Le signe caret (^) est utilisé pour démarrer le match au début.
| La barre verticale (|) est utilisée pour isoler les alternatives.
[[:<:]] Le [[: <:]] correspond au début des mots.
[[:>:]] Le [[:>:]] correspond à la fin des mots.
[:class:] [: Class:] correspond à une classe de caractères, c'est-à-dire [: alpha:] pour faire correspondre les lettres, [: space:] pour faire correspondre les espaces blancs, [: punct:] correspond aux ponctuations et [: upper:] pour les lettres de classe supérieure.

Commandes des fonctions SQL

Fonctions de chaîne

Commander Description
SELECT t1_id, t2, UCASE (t2) FROM table1; la fonction "UCASE" pour ce faire. Il prend une chaîne comme paramètre et convertit toutes les lettres en majuscules.

Fonctions numériques

Commander Description Exemple
DIV Division entière SELECT 23 DIV 6;
/ Division SÉLECTIONNER 23/6;
- Soustraction SÉLECTIONNER 23 - 6;
+ Une addition SÉLECTIONNEZ 23 + 6;
* Multiplication SELECT 23 * 6 AS multiplication_result;
% or MOD Module SÉLECTIONNER 23% 6; ou SELECT 23 MOD 6;
Floor cette fonction supprime les décimales d'un nombre et l'arrondit au nombre le plus bas le plus proche. SELECT FLOOR (23/6) AS floor_result;
Round cette fonction arrondit un nombre avec des décimales au nombre entier le plus proche. SELECT ROUND (23/6) AS round_result;

Fonctions mémorisées

Commander Description
CREATE FUNCTION sf_name ([paramètre (s)]) RETURNS type de données DÉTERMINISTIC STATEMENTS syntaxe de base pour créer une fonction stockée
CREATE FUNCTION sf_name ([paramètre (s)]) Obligatoire et indique au serveur MySQL de créer une fonction nommée `sf_name 'avec des paramètres optionnels définis entre parenthèses.
Type de données RETURNS Obligatoire et spécifie le type de données que la fonction doit renvoyer.
DÉTERMINISTE La fonction renverra les mêmes valeurs si les mêmes arguments lui sont fournis.
DÉCLARATIONS Le code procédural que la fonction exécute.

Commandes de la fonction MySQL Aggregate

Commander Description
SELECT COUNT (t1_id) FROM table1 WHERE t1_id = 2; Fonction COUNT
SELECT MIN (t3) FROM table2; Fonction MIN
SELECT MAX (t3) FROM table2; Fonction MAX
SELECT SUM (t4) FROM table3; Fonction SUM
SELECT AVG (t4) FROM table3; Fonction AVG

Commandes MySQL IS NULL & IS NOT NULL

Commander Description
SELECT COUNT (t3) FROM table1; (si t3 a une valeur nulle présente qui ne compte pas) Null comme valeur
CREATE TABLE table2 (t1_number int NOT NULL, t2_names varchar (255), t3 varchar (6)); Valeurs NOT NULL
comlumn_name IS NULL comlumn_name NOT NULL NULL Mots-clés Syntaxe de base
SELECT * FROM table1 WHERE t2_number EST NULL; Exemple de IS NULL
SELECT * FROM table1 WHERE t2_number N'EST PAS NULL; Exemple de IS NOT NULL

Commandes MySQL AUTO_INCREMENT

Commander Description
CREATE TABLE table1 (t1_id int (11) AUTO_INCREMENT, t2_name varchar (150) DEFAULT NULL, t3 varchar (500) DEFAULT NULL, PRIMARY KEY (t1_id)); Syntaxe d'incrémentation automatique

MYSQL - ALTER, DROP, RENAME, MODIFY

Commander Description
ALTER TABLE nom_table ADD COLUMN nom_colonne type_données; Modifier la syntaxe
DROP TABLE table_exemple; Syntaxe DROP TABLE
RENAME TABLE nom_table_actuelle TO nouveau_nom_table_table; Syntaxe RENAME COMMAND
ALTER TABLE table1 CHANGE COLUMN t1_names t1name char (250) NOT NULL; CHANGER LE MOT CLÉ
ALTER TABLE table1MODIFY t1name char (50) NOT NULL; MODIFIER LE MOT CLÉ
ALTER TABLE table1 ADD t4 date NULL APRES t3; APRÈS MOT-CLÉ

LIMITE & OFFSET MySQL

Commander Description
SELECT {nom (s) de champ | *} FROM nom (s) table (s) [condition WHERE] LIMIT N; Syntaxe du mot clé LIMIT
SELECT * FROM table1 LIMIT 1, 2; OFF SET dans la requête LIMIT

Commandes de sous-requête MySQL:

Commander Description
SELECT t1_name FROM table1 WHERE category_id = (SELECT MIN (t1_id) from table2); sous-requêtes

Commandes MySQL JOINS

Commander Description
SELECT * FROM table1 CROSS JOIN table2 Croix REJOINDRE
SELECT table1.t1, table1.t2, table2.t1 FROM table1, table2 WHERE table2.id = table1.table2_id JOINTURE INTERNE
SELECT A.t1, B.t2, B.t3 FROM table2 AS A LEFT JOIN table1 AS B ON B.table2_id = A.id JOINT GAUCHE
SELECT A.t1, A.t2, B.t3 FROM table1 AS A RIGHT JOIN table2 AS B ON B.id = A.table2_id JOINDRE DROIT
SELECT A.t1, B.t2, B.t3 FROM table2 AS A LEFT JOIN table1 AS B USING (table2_id) Clauses "ON" et "USING"

Commandes MySQL UNION

Commander Description
SELECT colonne1, colonne2 FROM table1 Syntaxe UNION
SELECT colonne1, colonne2 FROM table2; UNION DISTINCT

Commandes MySQL dans les vues

Commander Description
Instruction CREATE VIEW nom_vue AS SELECT; Syntaxe des vues
DROP VIEW general_v_movie_rentals; Suppression de vues

Commandes d'index MySQL

Commander Description
CREATE INDEX id_index ON nom_table (nom_colonne); Ajouter la syntaxe de base de l'index
DROP INDEX id_index ON nom_table; Syntaxe de base de Drop Index

Articles intéressants...