使用;其中;两次使用(随机)MySQL
需要帮忙吗 这很有效使用;其中;两次使用(随机)MySQL,mysql,where,using,Mysql,Where,Using,需要帮忙吗 这很有效 $sql = " SELECT * FROM (SELECT * FROM $TableDir WHERE dir_ranking = '1' ORDER BY RAND() LIMIT 16) x ORDER BY dir_date_listed ASC"; 它从“$TableDir”中随机选择,其中排名=1,限制为16条记录 但我需要过滤掉另一个选项。我还需要过滤
$sql = "
SELECT * FROM
(SELECT * FROM $TableDir
WHERE dir_ranking = '1'
ORDER BY RAND() LIMIT 16)
x ORDER BY dir_date_listed ASC";
它从“$TableDir”中随机选择,其中排名=1,限制为16条记录
但我需要过滤掉另一个选项。我还需要过滤“dir\u approved=Y”
我试过这个
$sql = "
SELECT * FROM
(SELECT * FROM $TableDir
WHERE dir_ranking = '1'
ORDER BY RAND() LIMIT 16)
WHERE dir_approved = 'Y' x
ORDER BY dir_date_listed ASC";
还有这个
$sql = "
SELECT * FROM
(SELECT * FROM $TableDir
WHERE dir_ranking = '1' AND WHERE dir_approved = 'Y'
ORDER BY RAND() LIMIT 16)
x ORDER BY dir_date_listed ASC";
以上最后两项均未产生任何数据
是否有另一种顺序或方法使其工作它不是
其中x=y其中a=b
,格式是其中x=y和a=b
。那应该能解决你的问题 谢谢大家!!它起作用了!不知道我为什么那样做!我想因为(随机)我觉得我必须重做WHERE!没问题!另外,我很抱歉,我还注意到您将第一个WHERE
放在子查询的外部。如果WHERE
应用于子查询,那么它应该是SELECT(条件所在的列)
,而您的是SELECT(条件所在的列)