MYSQL:WHERE(2个条件)不起作用

MYSQL:WHERE(2个条件)不起作用,mysql,Mysql,这是我的代码。我真的不知道为什么这不起作用 SELECT*FROM quete:我希望它从我的数据库中选择所有内容“quete” WHERE zone_quete=1:我希望代码只选择zone_quete=1的行 其余:我希望代码只选择id_quete与quetejouer中的“id_queteorij”不同的行,其中id_jouer=:id(:id是玩家的id) 只有当我把其中的一个放进去的时候,它才会起作用,我不能把两个都放进去,这是个问题 谢谢你的帮助 EDIT:OOPS,分隔条件的不

这是我的代码。我真的不知道为什么这不起作用

  • SELECT*FROM quete
    :我希望它从我的数据库中选择所有内容“
    quete

  • WHERE zone_quete=1
    :我希望代码只选择
    zone_quete
    =1的行

  • 其余:我希望代码只选择id_quete与quetejouer中的“id_queteorij”不同的行,其中id_jouer=:id(:id是玩家的id)

只有当我把其中的一个放进去的时候,它才会起作用,我不能把两个都放进去,这是个问题

谢谢你的帮助


EDIT:OOPS,分隔条件的不是“,”而是“和”。我的错

您应该使用且id不在

$query = $db->prepare('SELECT * FROM quete WHERE zone_quete = 1, id_quete NOT IN (select id_queteorij
             FROM quetejoueur
             WHERE id_joueur = :id) ');      
$query->bindValue(':id', $donnees["id"], PDO::PARAM_STR);
$query->execute();

不使用
,使用

$query = $db->prepare('SELECT * 
          FROM quete 
          WHERE zone_quete = 1 AND  id_quete NOT IN (
              SELECT id_queteorij
              FROM quetejoueur
              WHERE id_joueur = :id) ');     

$query->bindValue(':id', $donnees["id"], PDO::PARAM_STR);
$query->execute();