Langage SQL et élaboration de requêtes Natachone Flashcards
(16 cards)
Ordre des clauses dans une requête SQL SELECT
SELECT (choix des champs à afficher)
FROM (table source)
WHERE (ajout de filtres)
GROUP BY (regroupe les résultats selon un critère)
HAVING (ajout de conditions après GROUP BY)
ORDER BY (trier les résultats)
Syntaxe de base d’une requête SQL
Commence par SELECT et FROM
Se termine par un point-virgule
Ex : SELECT champ1, champ2 FROM Nom_Table;
Comment afficher tous les champs d’une table en SQL ?
SELECT*
Ex : SELECT* FROM Nom_Table;
Comment filtrer les résultats en SQL ?
WHERE pour ajouter une condition
Ex : SELECT Nom, Prix FROM PRODUIT WHERE Prix > 50;
Comment rechercher une chaîne de caractères en SQL ?
Prédicat LIKE avec des jokers :
% remplace plusieurs caractères
_ remplace un seul caractère
Ex pour chercher tous les fournissers commençant par “STE” : SELECT * FROM FOURNISSEUR WHERE NomFrs LIKE ‘STE%’;
Différence entre BETWEEN et IN en SQL ?
BETWEEN : sléectionner une valeur entre deux bornes
Ex : SELECT * FROM ACHAT WHERE QuantitéCde BETWEEN 100 AND 200;
IN : sélectionner des valeurs spécifiques dans une liste
Ex : SELECT * FROM PRODUIT WHERE Categorie IN (‘Boissons’, ‘Snacks’);
Comment chercher les valeurs NULL en SQL ?
Utiliser IS NULL pour trouver les enregistrements où un champ n’est pas renseigné
Ex : SELECT * FROM CLIENT WHERE Adresse IS NULL;
Comment combiner plusieurs conditions en SQL ?
Utiliser AND et OR dans la clause WHERE
Ex : SELECT * FROM CLIENT WHERE Nom = ‘Paul’ AND Ville = ‘Paris’;
Comment trier les résultats en SQL ?
Utiliser ORDER BY pour trier les données
Ex tri croissant : SELECT * FROM CLIENT ORDER BY Nom ASC;
Ex tri décroissant : SELECT * FROM CLIENT ORDER BY Nom DESC;
Comment faire une jointure entre deux tables en SQL ?
Utiliser INNER JOIN pour relier deux tables via une clé commune
Ex : SELECT * FROM CLIENT INNER JOIN COMMANDE ON CLIENT.NumClient = COMMANDE.NumClient;
Comment créer un champ calculé en SQL ?
Faire un calcul dans la requête et lui donner un alias avec AS
Ex : SELECT PrixHT * 1.2 AS PrixTTC FROM PRODUIT;
Comment utiliser GROUP BY et HAVING en SQL ?
GROUP BY regroupe les résultats et HAVING applique une condition sur ces groupes
Ex :
SELECT Ville, COUNT(NumClient) AS NbClients
FROM CLIENT
GROUP BY Ville
HAVING COUNT(NumClient) > 10;
Déf Requête imbriquée en SQL
Requête qui utilise le résultat d’une autre requête
Ex : SELECT * FROM CLIENT WHERE NumClient IN
(SELECT NumClient FROM COMMANDE WHERE Montant > 100);
Comment insérer des données en SQL ?
Utiliser INSERT INTO
Ex : INSERT INTO ARTICLE (NumArt, LibArt, Stock, PrixUnitHT) VALUES (437, ‘Générateur A3’, 0, 0);
Comment modifier des données en SQL ?
Utiliser UPDATE avec SET et WHERE
Ex : UPDATE ARTICLE SET PrixUnitHT = 50 WHERE NumArt = 437;
Comment supprimer une ligne en SQL ?
Utiliser DELETE FROM avec une condition WHERE
Ex : DELETE FROM ARTICLE WHERE NumArt = 437;