我在使用此查詢獲取有關不同表中的回覆數的論壇主題排序時遇到問題。我在左邊連接之前嘗試了這種方式,但在while循環中遺漏了一些數據。左邊加入後面的條目
SELECT forum_topics.*, COUNT(forum_posts.comment_id) AS replies
FROM forum_topics
WHERE forum_topics.subcat_id = '$subcatid'
LEFT JOIN forum_posts
ON forum_topics.topic_id=forum_posts.topic_num
ORDER BY replies DESC
它給了我這是一個錯誤:
You have an error in your SQL syntax; check the manual that corresponds to your
MySQL server version for the right syntax to use near 'LEFT JOIN forum_posts ON
forum_topics.topic_id=forum_posts.topic_num ORDER BY r' at line 1
這是在之前的工作中查詢:
SELECT * FROM forum_topics WHERE subcat_id = '$subcatid' ORDER BY date DESC
爲了呼應我使用:
$getChildCategory = mysql_query($query) or die(mysql_error());
$num = mysql_num_rows($get);
if($num == 0){ echo 'No Posts';}
else{
while ($row = mysql_fetch_assoc($get)){
當回聲時,我只得到1個左邊的結果ñ但與舊的我得到了2,這是我的預期。
你不應該在新應用程序中使用mysql_query,因爲它太危險了。改用PDO或'mysqli'。請使用[正確的SQL轉義](http://bobby-tables.com/php)。 – tadman 2012-08-01 16:39:02