2012-03-04 50 views
0

使用一组我有3个表,我想创建一个查询:通过与查找表

参赛者:
CompetitionID
BandID

BandResult
...
...

ResultPoints:
bandResult

乐队:
BandID
BandName

斜体=外键,大胆=主键

这是我目前有:

SELECT E.bandID, SUM(RP.points) 
    FROM entrants E, resultPoints RP 
WHERE E.bandResult = RP.bandResult 
GROUP BY E.bandID 
ORDER BY SUM(RP.points) DESC; 

我想也包括bandName但是当我这包括通过停止工作组:

SELECT E.bandID, B.bandName, SUM(RP.points) 
    FROM entrants E, resultPoints RP, band B 
WHERE E.bandResult = RP.bandResult 
    AND B.bandID = E.bandID 
GROUP BY E.bandID 
ORDER BY SUM(RP.points) DESC; 

如何使这项工作任何想法?

+0

那么你要在第一时间做什么?显然,你只需要添加B.bandName到GROUP BY语句 – Tim 2012-03-04 20:22:04

+0

是的,我只是需要它。谢谢 – Karl 2012-03-04 20:25:38

回答

1

尝试将bandName添加到group by子句中。

+0

哇,我怎么看不到:P谢谢 – Karl 2012-03-04 20:24:39

1

试试这个:

SELECT E.bandID, B.bandName, SUM(RP.points) 
FROM entrants E, resultPoints RP, band B 
WHERE E.bandResult = RP.bandResult 
AND B.bandID = E.bandID 
GROUP BY E.bandID, B.bandname 
ORDER BY SUM(RP.points) DESC;