Les requettes sql les plus utilisés
Requêtes SQL les plus utilisées
# Un langage de requêtes
Chaque commande envoyée au moteur de la base de données est appelée une requête. Sur cette page, nous allons lister les principales requêtes les plus utilisées dans un contexte de développement Web.
# Création d'une nouvelle table
La commande suivante permet de créer une nouvelle table users
en définissant chacun des champs :
CREATE TABLE users (
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
lastname VARCHAR(100),
firstname VARCHAR(100),
email VARCHAR(255)
);
# Insertion d'une nouvelle ligne
La requête suivante crée une nouvelle ligne dans la table en spécifiant les données contenues dans cette ligne. Notez que le champ id
n'est pas définit car, cette colonne a été définie en auto-incrément.
INSERT INTO `users` (`firstname`, `lastname`, `email`) VALUES ('Lary', 'Page', 'lary.page@google.com');
# Modification d'une ligne
Lors de la modification d'une ligne, il est nécessaire de préciser de quelle ligne il s'agit, ici par son identifiant id
.
UPDATE `users` SET email = 'lary.page@gmail.com' WHERE id=1;
# Suppression d'une ligne
Comme pour la modification, il faut spécifier quelle ligne il faut supprimer. La commande suivante va supprimer toutes les lignes dont le nom de famille de l'utilisateur est Page :
DELETE FROM `users` WHERE lastname='Page';
# Exemple
L'exemple suivant :
- crée une table
users
; - peuple la table avec 5 lignes ;
- modifie une ligne ;
- supprime une ligne ;
- sélectionne des lignes de la table.
-- Create table
CREATE TABLE users (
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
lastname VARCHAR(100),
firstname VARCHAR(100),
email VARCHAR(255)
);
-- Insert rows
INSERT INTO `users` (`firstname`, `lastname`, `email`) VALUES ('Lary', 'Page', 'lary.page@google.com');
INSERT INTO `users` (`firstname`, `lastname`, `email`) VALUES ('Sergueï', 'Brin', 'serguei.brin@google.com');
INSERT INTO `users` (`firstname`, `lastname`, `email`) VALUES ('Elon', 'Musk', 'elon.musk@tesla.com');
INSERT INTO `users` (`firstname`, `lastname`, `email`) VALUES ('Steve', 'Jobs', 'steve.jobs@apple.com');
INSERT INTO `users` (`firstname`, `lastname`, `email`) VALUES ('Noël', 'Père', 'santa@clause.com');
-- Update row
UPDATE `users` SET email = 'steve.jobs@paradise.com' WHERE lastname="jobs";
-- Delete row
DELETE FROM `users` WHERE email='santa@clause.com';
-- Select the full table
SELECT * FROM `users`;
-- Select rows sorted by lastname
SELECT * FROM `users` ORDER BY lastname;
-- Select rows for a given last name
SELECT * FROM `users` WHERE lastname = 'Page';
# Exercice
On donne la création de table suivante :
CREATE TABLE products (
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
name VARCHAR(100),
price FLOAT
);
- Ecrire les requêtes permettant de peupler la table avec les données suivantes :
Nom | Prix |
---|---|
smartphone | 399€ |
laptop | 699€ |
keyboard | 29.99€ |
mouse | 19.90€ |
printer | 1650€ |
modem | 99€ |
- Écrire la requête afin de corriger le prix de l'imprimante (165€ au lieu de 1650€).
- Écrire la requête permettant de supprimer le modem.
- Écrire la requête permettant de sélectionner tous les articles dont le prix est inférieur à 200€.
# Quiz
Quelle(s) requête(s) SQL permet(tent) d'insérer des données dans la base de données ?
Le(s)quel(s) de ces réponses n'est (ne sont) pas des mots-clés de MySQL ?
Quelle(s) syntaxe(s) permet(tent) de classer les résultats d'une requête SQL dans l'ordre alphabétique ?
Commentaires
Enregistrer un commentaire