2016-01-17 58 views
-1

我有2個表;如何做mysql中的外連接

table_brands - brand_id, brand_name 
table_products - product_id, product_name, brand_id 

與此查詢

SELECT B.*, COUNT(P.product_id) 
from table_brands B 
INNER JOIN table_products P 
WHERE B.brand_id = P.brand_id 
GROUP BY(P.brand_id) 

我得到品牌信息和產品數量對這個品牌的標識。但是我沒有獲得那些沒有產品的品牌的品牌細節。

如果沒有該品牌的產品,我想獲得所有品牌和產品數量(產品數量爲0)。

任何人都可以幫助我做到這一點。

+0

你必須在問題的標題「外」,但無法得到的「左」?奇。這可能有助於未來http://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins –

回答

1

使用LEFT JOIN這樣的:

SELECT B.*, COUNT(P.product_id) 
from table_brands B 
LEFT JOIN table_products P ON B.brand_id = P.brand_id 
GROUP BY B.brand_id