2013-03-15 32 views
0

我不知道如何sumarize顏色分組cars.brand(不同)...請幫助。分組由......(mysql加入)

我的問題,不能簡單地解釋(大量的代碼),所以看:http://sqlfiddle.com/#!2/17bac6/2

我想:

brand blue red green black 
volvo 320 7289 3313  1198 
citroen 538 3286 
seat 1245 
audi 1076 2153 2595 
bmv  135 5637  864  282 

TNX

+1

什麼是你想要的結果? – 2013-03-15 16:37:29

+0

抱歉,我的壞英語...不同的汽車品牌的總和顏色(奧迪,寶馬...) – user1924728 2013-03-15 16:43:07

+0

如果你從「GROUP BY」中拿出總的字段是否給你你需要的東西?即這:http://sqlfiddle.com/#!2/17bac6/24 – 2013-03-15 16:54:06

回答

0

從我的理解,這應該是你」重新尋找。

SELECT cars.brand, 
(
    SELECT COUNT(*) FROM blue 
    WHERE blue.prr = cars.id_p 
) as "blue", 
(
    SELECT COUNT(*) FROM red 
    WHERE red.prr = cars.id_p 
) as "red", 
(
    SELECT COUNT(*) FROM green 
    WHERE green.prr = cars.id_p 
) as "green", 
(
    SELECT COUNT(*) FROM black 
    WHERE black.prr = cars.id_p 
) as "black" 
FROM cars 
WHERE cars.user_id = 54 
AND  cars.pend between '2012-01-01' AND '2012-12-31' 
GROUP BY cars.brand 

如果你設計的方案,請查找數據庫規範化,瞭解關係的設計也不是很大(沒有犯罪意圖)

+0

在我編輯的文章上面看 – user1924728 2013-03-15 17:00:08

+0

不,它不是原來的計劃 – user1924728 2013-03-15 17:06:21