2016-10-24 9 views
0

を有するものを返す限り、私は行くことができるようです:カウントの記事だけでなく、ここでノースレッド

SELECT link_title, count(links.unique_id) as Total 
FROM links, threads 
WHERE threads.links_id = links.unique_id 
GROUP BY links.link_title 

これは正しくスレッドを持つレコードごとにカウントすべての「リンク」のレコードと対応するコメントを返します。問題は、スレッドのないリンクはまったく返されないということです。

このクエリを再フォーマットする最も単純な方法は、スレッドが0のものであってもすべての "リンク"を返すようにすることです。あなたが外部結合たい

+0

期待される結果も表示してください。 (その入力データで) –

答えて

2

(古代暗黙的に記述することは不可能であるが、使用しているwhere句に参加):

SELECT link_title, count(threads.links_id) as Total 
FROM links 
    LEFT JOIN threads ON threads.links_id = links.unique_id 
GROUP BY links.link_title 

count()などの集計関数はNULL値を無視しているので、それはカウントすることが重要ですthreadsテーブル内の行数count(threads.links_id)threads.links_idとした場合、linksの場合はNULLになりますthreads

関連する問題