2016-01-20 36 views
0

查询失败,过长

$query = mysql_query("SELECT * FROM chapter LEFT JOIN page ON chapter.chapterID=page.chapterID WHERE page.category AND chapter.category LIKE 'Novice' GROUP BY page.pageID,page.chapterID ")or die('Query failed');

我有以下查询,但我也想添加以下WHERE chapter.lectureID=1我怎么可以这样做。我想这:

$query = mysql_query("SELECT * FROM chapter LEFT JOIN page ON chapter.chapterID=page.chapterID WHERE chapter.lectureID=1,page.category AND chapter.category LIKE 'Novice' GROUP BY page.pageID,page.chapterID ")or die('Query failed');

但是查询失败。

+0

你应该尝试输出'mysql_error()',它应该告诉你类似“你的语法错误在chapter.lectureID = 1,page.category和chapter.category'附近”。 – Alexander

回答

1

WHERE条款中删除,page.category。它没有理由在那里,因为它没有与价值进行比较。

$query = mysql_query(" 
    SELECT * FROM chapter 
    LEFT JOIN page ON chapter.chapterID=page.chapterID 
    WHERE chapter.lectureID = 1 
    AND chapter.category LIKE 'Novice' 
    GROUP BY page.pageID,page.chapterID 
")or die('Query failed'); 

此外,您使用的是LIKE运营商,你是传递一个字符串,而不是一个模式。您可以将'Novice'更改为'%Novice%',它将匹配包含该字符串的任何内容。

+0

我同意,'page.category'没有什么。 – Neha