我试图选择全部并跳过一些行。

这条线上有一些语法错误,我不知道我在做什么错。

SELECT * FROM ads WHERE bbookschool like '$data' && WHERE bbookname != 'TEST' ORDER BY time desc


更多代码

$data = preg_replace ('#[^a-zA-Z0.-_% ]#i', '', $_POST['data']);
$Result = mysql_query("SELECT * FROM ads WHERE bbookschool like '$data' && WHERE bbookname != 'TEST0160' ORDER BY time desc")
 or die (mysql_error());
while($row = mysql_fetch_array($Result)){
require 'book_ad.php';
$adCondition = (!empty($row['bbookname'])) ? $ad : '';
echo $adCondition;
         }


谢谢。

最佳答案

您只需要使用WHERE一次:

SELECT
    *
FROM
    ads
WHERE
    bbookschool LIKE '$data'
    && bbookname != 'TEST'
ORDER BY
    `time` DESC;


另外,如果要在$ data中搜索包含字符串的单词,请在$ data周围设置%

bbookschool LIKE '%$data%'


PS:我相信time也是reserved word,因此请在其周围加上反引号(`)。

关于php - 如何从表中全选并跳过具有特定值的某些行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21131409/

10-09 17:30