MySQL - Double condition sur un WHERE

PHPFANParis -  
Mihawk Messages postés 4315 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'aimerai savoir s'il y a moyen d'optimiser ce code

$reponse = $bdd->query("SELECT * FROM users WHERE activate='1' OR activate='2'");

par quelque chose dans ce style

$reponse = $bdd->query("SELECT * FROM users WHERE activate='1-2'");
A voir également:

4 réponses

PHPFANParis
 
ou plutot $reponse = $bdd->query("SELECT * FROM users WHERE activate>'0'");
0
Mihawk Messages postés 4315 Date d'inscription   Statut Contributeur Dernière intervention   846
 
Et s'il y a aussi les valeurs 3, 4 etc...?
0
Melooo Messages postés 1405 Date d'inscription   Statut Membre Dernière intervention   84
 
Salut,
Tu peux essayer :
$bdd->query("SELECT * FROM users WHERE activate <= 2");

Normalement tu n'a pas besoin de guillemet lorsque c'est un chiffre.
0
Mihawk Messages postés 4315 Date d'inscription   Statut Contributeur Dernière intervention   846
 
Et s'il y a aussi les valeurs 0, -1 etc...?
0
Mihawk Messages postés 4315 Date d'inscription   Statut Contributeur Dernière intervention   846
 
Hello,

$reponse = $bdd->query("SELECT * FROM users WHERE activate IN (1, 2);"); 
0
mpmp93 Messages postés 6648 Date d'inscription   Statut Membre Dernière intervention   1 340
 
Bonjour,

Oui c'est la meilleure solution.
0
Mihawk Messages postés 4315 Date d'inscription   Statut Contributeur Dernière intervention   846
 
:)
0
blux Messages postés 27151 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Salut,

essaie avec un EXPLAIN SELECT, tu verras comment est traitée la requête...
0