gpt4 book ai didi

php - MySql - 如何将多个 WHERE 子句与 OR 一起使用

转载 作者:行者123 更新时间:2023-12-01 00:21:08 25 4
gpt4 key购买 nike

我一直在寻找如何正确执行此操作的几个小时,但没有得到任何好的结果,所以我想试试我的运气并问问你们。所以这是我的脚本:

$q = $handler->prepare("SELECT * FROM users WHERE status = ? AND membership = ? AND confirmation = ? AND alpha_status = ? AND approved = ? AND type = ? OR type2 = ? OR type3 = ? OR type4 = ? OR type5 = ?");
$q->bindParam(1, $yes);
$q->bindParam(2, $good);
$q->bindParam(3, $good);
$q->bindParam(4, $good);
$q->bindParam(5, $yes);
$q->bindParam(6, $search);
$q->bindParam(7, $search);
$q->bindParam(8, $search);
$q->bindParam(9, $search);
$q->bindParam(10, $search);
$q->execute();

$howMany = $q->rowCount();

所以一切正常,但它只是抓取数据库中的所有内容。我猜多个 OR 不起作用。我想要实现的是通过搜索标准的用户数量。使用“类型”,所有用户都将 5 种类型添加到他们的帐户中。它可以是 Alpha Bravo Charlie Delta Echo 等,所以如果一个用户 type2 是 Bravo,另一个用户可能在 type5 中有 Bravo。所以我试图获得拥有 Bravo 作为一种类型的用户总数。希望我能解释清楚。提前致谢

最佳答案

使用括号建立运算符优先级:

 AND approved = ? AND (type = ? OR type2 = ? OR type3 = ? OR type4 = ? OR type5 = ?)");

关于php - MySql - 如何将多个 WHERE 子句与 OR 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26048295/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com