PHP MySQL SELECT WHERE
La requête SELECT permet de récupérer des données depuis une base de données. La clause WHERE sert à filtrer les données en fonction de conditions spécifiques. La clause WHERE peut être combinée avec la requête SELECT pour ne récupérer que des données précises depuis la base de données.
Voici la syntaxe de base de la requête SELECT avec la clause WHERE :
PHP / SQL Syntaxe de base de la requête SELECT avec la clause WHERE
SELECT column1, column2, ...
FROM table_name
WHERE condition;Dans la syntaxe ci-dessus :
column1,column2, ... sont les colonnes depuis lesquelles vous souhaitez récupérer des données.table_nameest le nom de la table depuis laquelle vous souhaitez récupérer des données.conditionest une expression logique qui détermine quelles données récupérer.
Exemple
Considérons une table nommée customers contenant les données suivantes :
| id | name | country | |
|---|---|---|---|
| 1 | John | [email protected] | USA |
| 2 | Jane | [email protected] | UK |
| 3 | Alice | [email protected] | France |
Voici un exemple d'utilisation de la requête SELECT avec la clause WHERE pour récupérer uniquement des données spécifiques de la table customers :
PHP / SQL Exemple d'utilisation de la requête SELECT avec la clause WHERE pour récupérer uniquement des données spécifiques de la table customers
SELECT name, email
FROM customers
WHERE country = 'USA';La requête SELECT ci-dessus ne retournera que les lignes où la colonne country est égale à USA. Le résultat sera :
name | email
----------|----------------------
John | [email protected]Conditions multiples
Vous pouvez également utiliser plusieurs conditions dans la clause WHERE. Par exemple, vous pouvez récupérer tous les clients de la table customers qui habitent aux USA et dont l'adresse e-mail se termine par example.com.
PHP / SQL Récupérer tous les clients de la table customers qui habitent aux USA et dont l'adresse e-mail se termine par example.com
SELECT name, email
FROM customers
WHERE country = 'USA'
AND email LIKE '%example.com';La requête SELECT ci-dessus retournera le résultat suivant :
name | email
----------|----------------------
John | [email protected]Vous pouvez utiliser des opérateurs logiques tels que AND et OR pour combiner plusieurs conditions dans la clause WHERE.
Note de sécurité : Lors du filtrage de données avec des entrées fournies par l'utilisateur, utilisez toujours des requêtes préparées (par ex. PDO ou MySQLi) pour prévenir les attaques par injection SQL.
Pratique
Quelle est l'utilité de la clause WHERE dans MySQL en PHP ?