Une restriction consiste à sélectionner les lignes satisfaisant à
une condition logique effectuée sur leurs attributs.
En SQL, les restrictions s'expriment à l'aide de la clause WHERE suivie
d'une condition logique exprimée à l'aide d'opérateurs logiques
Soit la table suivante, présentant des voitures d'occasion :
Occaz
| Marque | Modele | Serie | Numero | Compteur |
|---|---|---|---|---|
| Renault | 18 | RL | 4698 SJ 45 | 123450 |
| Renault | Kangoo | RL | 4568 HD 16 | 56000 |
| Renault | Kangoo | RL | 6576 VE 38 | 12000 |
| Peugeot | 106 | KID | 7845 ZS 83 | 75600 |
| Peugeot | 309 | chorus | 7647 ABY 82 | 189500 |
| Ford | Escort | Match | 8562 EV 23 |
Le champ présentant la valeur du kilométrage au compteur de la Ford
Escort est délibérément non renseigné.
SELECT * FROM OCCAZ WHERE (Compteur < 100000)
Résultat
| Marque | Modele | Serie | Numero | Compteur |
|---|---|---|---|---|
| Renault | Kangoo | RL | 4568 HD 16 | 56000 |
| Renault | Kangoo | RL | 6576 VE 38 | 12000 |
| Peugeot | 106 | KID | 7845 ZS 83 | 75600 |
SELECT Marque,Compteur FROM OCCAZ WHERE (Compteur < 100000)
Résultat
| Marque | Compteur |
|---|---|
| Renault | 56000 |
| Renault | 12000 |
| Peugeot | 75600 |
SELECT * FROM OCCAZ WHERE (Compteur <= 100000) AND (Compteur >= 30000)
Résultat
| Marque | Modele | Serie | Numero | Compteur |
|---|---|---|---|---|
| Renault | Kangoo | RL | 4568 HD 16 | 56000 |
| Peugeot | 106 | KID | 7845 ZS 83 | 75600 |
Le prédicat LIKE permet de faire des comparaisons sur des chaines grâce à des caractères, appelés caractères jokers :
SELECT * FROM OCCAZ WHERE Marque LIKE "_E%"
Résultat
| Marque | Modele | Serie | Numero | Compteur |
|---|---|---|---|---|
| Renault | 18 | RL | 4698 SJ 45 | 123450 |
| Renault | Kangoo | RL | 4568 HD 16 | 56000 |
| Renault | Kangoo | RL | 6576 VE 38 | 12000 |
| Peugeot | 106 | KID | 7845 ZS 83 | 75600 |
| Peugeot | 309 | chorus | 7647 ABY 82 | 189500 |
Suivant l'environnement ou vous utilisez ce prédicat, il sera peut-être nécessaire d'"échapper" les guillemets avec un caractère d'échappement (généralement la barre oblique inverse "\").
Les prédicats BETWEEN et IN permettent de vérifier respectivement qu'une valeur se trouve dans un intervalle ou qu'une valeur appartient à une liste de valeurs :
SELECT * FROM OCCAZ WHERE Compteur BETWEEN 100000 AND 30000
Résultat
| Marque | Modele | Serie | Numero | Compteur |
|---|---|---|---|---|
| Renault | Kangoo | RL | 4568 HD 16 | 56000 |
| Peugeot | 106 | KID | 7845 ZS 83 | 75600 |
SELECT * FROM OCCAZ
WHERE Marque IN ("Peugeot", "Ford")
Résultat
| Marque | Modele | Serie | Numero | Compteur |
|---|---|---|---|---|
| Peugeot | 106 | KID | 7845 ZS 83 | 75600 |
| Peugeot | 309 | chorus | 7647 ABY 82 | 189500 |
| Ford | Escort | Match | 8562 EV 23 |
Lorsqu'un champ n'est pas renseigné, le SGBD lui attribue une valeur spéciale que l'on note NULL. La recherche de cette valeur ne peut pas se faire à l'aide des opérateurs standards, il faut utiliser les prédicats IS NULL ou bien IS NOT NULL.
SELECT * FROM OCCAZ WHERE Compteur IS NULL
Résultat
| Marque | Modele | Serie | Numero | Compteur |
|---|---|---|---|---|
| Ford | Escort | Match | 8562 EV 23 |
| 24/07 15h30 | Afficher la bonne variable récupérée de SQL | 12 |
| 24/07 15h28 | [SQL] comparaison Résultat | 25 |
| 23/07 14h55 | SQL Récuperer le mois d'une date. | 2 |
| 22/07 15h55 | Probleme SQL encore.. | 8 |
| 21/07 16h57 | SQL SERVER, vérifier avant d'insérer | 2 |
![]() | WAMP Server - WAMP5 (WAMP signifiant Windows Apache Mysql PHP) est une plateforme de développement Web sous Windows. Il vous permet de... | Catégorie: Serveurs Licence: Freeware/gratuit |
![]() | Visual Basic 6 Runtime (VB6 DLL) - Le Runtime Visual Basic 6 contient l'ensemble des librairies (DLL) nécessaires pour exécuter des programmes écrits en... | Catégorie: Librairies (DLL) Licence: Freeware/gratuit |
![]() | MySQL - MySQL est une des systèmes de gestion de bases de données le plus répandu au monde. | Catégorie: Bases de données Licence: Open Source |
![]() | Notepad++ - Notepad++ est un editeur de code source qui supporte plusieurs langages. Il s'agit d'un logiciel libre performant et... | Catégorie: Développement Licence: Open Source |