Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用;其中;两次使用(随机)MySQL_Mysql_Where_Using - Fatal编程技术网

使用;其中;两次使用(随机)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(条件所在的列)