我有一个很长的 sql 语句,我试图向其中添加一些 AND 条件,但它不起作用。
这是我的声明:
if($cat=="att") { $sqlCatC = "INNER JOIN yt_att_data CAT
ON CAT.busID = R.id AND CAT.subcatID = 5 AND CAT.subcatID = 136 AND CAT.deleted = 0"; }
//Get RegionInfo busID based on region, approved
$sql= "SELECT DISTINCT CAT.busID,R.id,companyName,membershipID,addressID,city,logo,descriptionShort FROM yt_Business_RegInfo R
$sqlReg
INNER JOIN yt_Business_Seasons S
ON R.id = S.busID AND S.deleted = 0
INNER JOIN yt_Business_Address A
ON R.addressID = A.id
INNER JOIN yt_Business_Membership M
ON R.membershipID = M.id AND M.approved = 1
$sqlCatC
WHERE R.deleted = 0
ORDER BY R.companyName ASC LIMIT $start, $limit";
在顶部 $sqlCatC 中,我尝试添加一个 AND 条件,其中 CAT.subcatID 等于 5 和 136。它适用于检查单个 CAT.subcatID,但不适用于两个。如有任何建议,我们将不胜感激。
最佳答案
使用 IN
关键字,如下所示:
CAT.subcatID IN(5,136)
替换你的两个AND。
关于mysql - SQL 选择多个 AND,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5653094/