Liste des commandes SQL

SQL est suivi d'un ensemble unique de règles et de directives appelé syntaxe.

Toutes les instructions SQL commencent par l'un des mots clés tels que SELECT, INSERT, UPDATE, DELETE, ALTER, DROP, CREATE, USE, SHOW  et toutes les instructions se terminent par un point-virgule (;).

Le langage SQL est insensible à la casse. Les instructions peuvent être écrites en majuscule ou en minuscule.
Par contre le nom des tables et des champs peuvent être sensible à la casse en fonction du SGBD utilisé.
Il est fortement conseiller d'écrire le nom des tables et des champs tels qu'ils sont écrit dans le SGBD.

Aide mémoire SQL

Comme il n'est pas simple de se souvenir par coeur de toutes les inscructions et types de données voici un aide mémoire pour avoir les bases de SQL sous les yeux.

Aide mémoire SQL

Fonctions sur les dates

MONTH
Récupère le numéro du mois dans une date au format YYYY-MM-DD.
https://sql.sh/fonctions/month
YEAR
Récupère l'année dans une date au format YYYY-MM-DD.
https://sql.sh/fonctions/year

Fonctions SQL

SELECT
Retourne des enregistrements dans un tableau de résultat.
https://sql.sh/cours/select
UPDATE : mettre à jour un tuple
Permet d’effectuer des modifications sur des tuples existants.
https://sql.sh/cours/update
INSERT INTO : ajouter un tuple
Permet l'insertion de nouveaux tuples dans la table
https://sql.sh/cours/insert-into
DELETE : Supprimer un tuple
Supprime un ou plusieurs tuples de la table
https://sql.sh/cours/delete
CREATE TABLE [IF NOT EXISTS]
Permet de créer une table en SQL.
Pour éviter une erreur si la table existe déjà, il est conseillé d'utiliser CREATE TABLE IF NOT EXISTS nom_table
https://sql.sh/cours/create-table
DROP TABLE
Permet la suppression d'une table avec son contenu
https://sql.sh/cours/drop-table
EXISTS
Test l'existance ou non de lignes lors de l’utilisation d’une sous-requête.
https://sql.sh/cours/where/exists

Opérateurs

WHERE
Extrait les lignes d’une base de données qui respectent une condition.
https://sql.sh/cours/where
AND/OR
Permet de combiner des conditions dans la clause WHERE
https://sql.sh/cours/where/and-or
IN/NOT
Operateur logique utilisé dans la clause WHERE pour vérifier si une colonne est égale à une des valeurs comprise dans le 'set' de valeurs déterminés.
https://sql.sh/cours/where/in
Utilisation du NOT
Operateur logique utilisé dans la clause WHERE pour vérifier si une colonne n'est pas égale à une des valeurs comprise dans le 'set' de valeurs déterminés.
https://sql.sh/cours/where/in
SELECT * FROM commandes WHERE id_commande NOT IN(1, 5);
BETWEEN
Sélectionne un intervalle de données (chaînes de caractères, de nombres ou de dates) dans la clause WHERE
https://sql.sh/cours/where/between
LIKE
Ce mot-clé permet d’effectuer une recherche sur un modèle particulier dans la clause WHERE (recherche par mots, lettre(s), chiffre(s) contenus dans une colonne)
https://sql.sh/cours/where/like
CASE...WHEN
Ce mot-clé permet d’effectuer une recherche sur un modèle particulier dans la clause WHERE (recherche par mots, lettre(s), chiffre(s) contenus dans une colonne)
https://sql.sh/cours/case

Regroupement / Organisation

GROUP_CONCAT
Regroupe les valeurs non nulles d’un groupe en une chaîne de caractère.
https://sql.sh/fonctions/concat
DISTINCT
Supprime les redondances (lignes identiques) dans les résultats.
https://sql.sh/cours/distinct
GROUPE BY
Groupe plusieurs résultats et utilise une fonction de totaux sur un groupe de résultat.
https://sql.sh/cours/group-by
HAVING
S'utilise comme la clause WHERE et permet de filtrer le résultat avec les fonctions SUM(), COUNT(), AVG(), MIN() ou MAX()
https://sql.sh/cours/having
ORDER BY (DESC/ASC)
Permet de trier (classer) les lignes dans un résultat de requête SQL
https://sql.sh/cours/order-by
LIMIT et OFFSET
Indique le nombre maximum de résultats que l’ont souhaite obtenir.

La commande LIMIT en SQL est utilisée pour spécifier le nombre maximum de lignes à retourner dans le résultat d'une requête. Elle est souvent utilisée pour implémenter la pagination dans les applications qui affichent de grandes quantités de données.

La clause OFFSET, quant à elle, est utilisée en combinaison avec LIMIT pour sauter un nombre spécifique de lignes avant de commencer à retourner les lignes du résultat.
La commande OFFSET est basé sur un index zéro ; par exemple, OFFSET 10 commence à la 11ème ligne.

Exemples

Supposons que vous ayez une table Employes et que vous souhaitiez obtenir seulement un nombre limité d'employés.

Pour obtenir les 5 premiers employés :

SELECT * FROM Employes
LIMIT 5;

Cette requête retourne les 5 premiers employés de la table.

Exemple de LIMIT avec OFFSET en MySQL

Si vous voulez paginer les résultats, par exemple, afficher les employés 6 à 10 :

Pour obtenir les employés 6 à 10 :
SELECT * FROM Employes
LIMIT 5 OFFSET 5;

La combinaison de LIMIT et OFFSET offre un moyen efficace de gérer et de présenter de grandes quantités de données dans des applications, en permettant aux utilisateurs de naviguer à travers les données page par page.

https://sql.sh/cours/limit

Opération sur les champs

AS (alias)

Renomme temporairement le nom d'une colonne ou d'une table dans une requête

   -- Sélection de la colonne 'nom' renommée en 'nom_employe'
SELECT nom AS nom_employe FROM employes;

Dans cet exemple, AS nom_employe renomme la colonne nom en nom_employe dans les résultats de la requête.

https://sql.sh/cours/alias
AVG

Calcule la moyenne d'une colonne de type numérique(INT, FLOAT...).

   -- Calcul de la moyenne des salaires des employés
SELECT AVG(salaire) AS salaire_moyen FROM employes;

Dans cet exemple, AVG(salaire) calcule la moyenne des valeurs dans la colonne salaire, et AS salaire_moyen renomme le résultat de cette colonne en salaire_moyen.

https://sql.sh/fonctions/agregation/avg
SUM

Calcule la somme d'une colonne de type numérique(INT, FLOAT...).

    -- Somme totale des salaires des employés
SELECT SUM(salaire) AS salaire_total FROM employes;

Ici, SUM(salaire) additionne toutes les valeurs de la colonne salaire, et salaire_total est le nom donné au résultat.

https://sql.sh/fonctions/agregation/sum
COUNT

Compte le nombre d’enregistrement dans une table.

   -- Nombre total d'employés
SELECT COUNT(*) AS nombre_employes FROM employes;

COUNT(*) compte le nombre total de lignes dans la table employes, et le résultat est nommé nombre_employes.

https://sql.sh/fonctions/agregation/count
MAX

Retourne la valeur maximale d’une colonne sélectionnée dans un résultat de recherche.

   -- Salaire le plus élevé parmi les employés
SELECT MAX(salaire) AS salaire_max FROM employes;

MAX(salaire) trouve le salaire le plus élevé dans la table employes, et le résultat est étiqueté salaire_max.

https://sql.sh/fonctions/agregation/max
MIN

Retourne la valeur minimale d’une colonne sélectionnée dans un résultat de recherche.

   -- Salaire le plus bas parmi les employés
SELECT MIN(salaire) AS salaire_min FROM employes;

MIN(salaire) identifie le salaire le plus bas parmi les employés, et le résultat est renommé salaire_min.

https://sql.sh/fonctions/agregation/min