2011-02-14 48 views
0

我有兩張表,第一個把兩個人放入一個帶有fldPairNum的組中,第二個表爲每個人收集分數。group_concat缺少的組

我的問題是,如果只有一對提交了分數,那麼只有他們的名字出現在'nameOfPair'列中,但我真的需要這兩個名字。我能做些什麼來解決這個問題?

SELECT 
group_concat(DISTINCT `delegate`.`fldFirstName`,' ',`delegate`.`fldSurname` SEPARATOR ' and ') AS 'nameOfPair', 
Sum(`data`.`fldScore`) AS 'totalScore' 
FROM 
`data` 
Inner Join `delegate` ON `data`.`fldDelegateID` = `delegate`.`fldID` 
WHERE 
`delegate`.`fldCategory` > '0' 
AND 
`delegate`.`fldPairNum` > '0' 
GROUP BY 
`delegate`.`fldPairNum` 

非常感謝 戴夫

回答

0
SELECT GROUP_CONCAT(DISTINCT 
     `delegate`.`fldFirstName`, ' ', `delegate`.`fldSurname` 
     SEPARATOR 
     ' and ')    AS 'nameOfPair', 
     SUM(`data`.`fldScore`) AS 'totalScore' 
FROM `delegate` 
     LEFT JOIN `data` 
     ON `data`.`fldDelegateID` = `delegate`.`fldID` 
WHERE `delegate`.`fldCategory` > '0' 
     AND `delegate`.`fldPairNum` > '0' 
GROUP BY `delegate`.`fldPairNum` 
+0

這是偉大的感謝。我在加入一段時間的時候在代理和數據方面有錯誤,但這並沒有幫助,但它現在已經全部修復了! – Dave 2011-02-14 13:25:08