Aller au contenu

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

sql
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_name est le nom de la table depuis laquelle vous souhaitez récupérer des données.
  • condition est 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 :

idnameemailcountry
1John[email protected]USA
2Jane[email protected]UK
3Alice[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

sql
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 :

console
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

sql
SELECT name, email
FROM customers
WHERE country = 'USA'
AND email LIKE '%example.com';

La requête SELECT ci-dessus retournera le résultat suivant :

console
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 ?

Trouvez-vous cela utile?

Aperçu dual-run — comparez avec les routes Symfony en production.