[MySQL/PHP] Ordre de priorité AND OR

Résolu/Fermé
Prower91 - 26 févr. 2006 à 10:45
 sbo - 1 juil. 2014 à 16:08
Bonjour,

J'aimerais intérroger MySql en voulant sélectionner 3 choses :
> Le nom de l'expéditeur (who) OU le nom du destinataire (destinataire) vaut 1 par exemple.
> ET Le n° du sujet dans l'historique (history vaut dans tout LES CAS 2.

Le problème, c'est qu'avec

$sql_historique = "SELECT * FROM `pm` WHERE `destinataire`= '1' OR `who`= '1' AND 'historique' = '2' ORDER BY id ASC LIMIT 1";

Ca ne sélectionne rien du tout de ce que je veux !
Je pense m'être trompé sur la priorité, mais alors comment ?

Merci !

1 réponse

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
26 févr. 2006 à 12:21
Salut,

$sql_historique = "SELECT * FROM `pm` WHERE `destinataire`= '1' OR `who`= '1' AND 'historique' = '2' ORDER BY id ASC LIMIT 1";

AND a une priorité supérieure à OR. Utilise des paranthéses.
$sql_historique = "SELECT * FROM `pm` WHERE (`destinataire`= '1' OR `who`= '1') AND 'historique' = '2' ORDER BY id ASC LIMIT 1"; 
0
salut tout le monde , STP lami20j tu peut m'aider?
je suis perdu . j'ai evoyé un message au forum
(aidez moi c'est trés urgent) 
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567 > éma
26 févr. 2006 à 14:54
Pourquoi moi?!

Il y a beaucoup des gens sur ce site qui connaissent mieux que moi le C.
Je suis certain que tu va t'en sortir et si tu me permets un petit conseils, ne panique jamais quelque soit la situation sinon tu ne trouveras pas si rapidement la solution à ton problème.

Amicalement

lami20j
0
Merci beaucoup lami20j; ça marche perfect :)
0
baldwim Messages postés 16 Date d'inscription vendredi 16 décembre 2011 Statut Membre Dernière intervention 14 octobre 2012
17 déc. 2011 à 05:25
Nickel =D
0
6 ans après, toujours utile ^^ Thank's a lot ;)
0