2014-10-29 18 views
1

比較計數我有以下表結構: -的MySQL從同一列

Brand 

id | bname | desc 
---------------------- 


Products 

pid | bid_fk | name | rating | type 
--------------------------------------------- 

鑑於產品type可能是「S」或「T」,我想SELECT其中有更多的產品品牌類型'S'比類型'T'

我試過使用COUNT,但我不知道如何比較產品表中兩種類型的COUNT

回答

2

嘗試使用GROUP BYHAVING聲明和比較計數S與計數T。 爲了得到計數,您可以使用CASE聲明是這樣的:

SELECT b.id,MAX(b.bname) 
FROM Brand b 
JOIN Product p on (p.bid_fk=b.id) 
GROUP BY b.id 
HAVING SUM(CASE WHEN p.type='S' THEN 1 ELSE 0 END) > 
     SUM(CASE WHEN p.type='T' THEN 1 ELSE 0 END) 
+0

謝謝:)我需要什麼 – MrSSS16 2014-10-29 09:55:04