2011-03-20 60 views
1

我需要幫助找到在此基礎上表中的球員和球隊名稱的總點數:SQL幫助查找最大總價值

Tbl.STATS [Match_ID,Player_ID,Points_Scored,Team_Name] 

任何建議或幫助,將不勝感激!

+0

玩家可以參加多支球隊(轉會)嗎?你是什​​麼意思「MAX總數」? 'MAX'和'SUM'是兩碼事。你還使用了什麼RDBMS? – 2011-03-20 23:07:38

+0

玩家可以通過TRANSFERS實體爲多支球隊打球,但在這種情況下並不需要。這將是目前統計轉會後的季節。我正在使用ORACLE 2007. – Potter 2011-03-20 23:19:20

+0

那麼你是否在尋找總分最高的單人/團隊組合? – 2011-03-20 23:22:24

回答

2

上所有的球隊

select player_id, team_name, sum(points_scored) sum_score 
from stats 
group by player_id, team_name 
order by sum_score desc 

球員和球隊的名字所有玩家(例如,鮑勃打了老鷹,所以不考慮當Bob打了鯊魚)

select sum(points_scored) sum_score 
from stats 
where player_id = 1 and team_name = 'Eagles' 

但問題問還有一件事,所以要回答這個問題,MAX總分:

select max(sum_score) MaxTotalScore 
from 
(
    select player_id, team_name, sum(points_scored) sum_score 
    from stats 
    group by player_id, team_name 
) X 
0

SELECT play er_id,TEAM_NAME,SUM(points_scored)FROM STATS集團通過player_id,TEAM_NAME

0

「我希望找到的球員說 得分最多的總分和什麼 隊球員上。」

我通常不會涉足Oracle標記,但我相信這應該工作!

WITH T AS 
(
SELECT Player_ID, 
     Team_Name, 
     SUM(Points_Scored) OVER (PARTITION BY Player_ID) AS Points_Total 
FROM Tbl.STATS 
), T2 AS 
(
SELECT Player_ID, 
     Team_Name, 
     Points_Total, 
     RANK() OVER (ORDER BY Points_Total DESC) AS RN 
FROM T  
) 
SELECT Player_ID, 
     Team_Name, 
     Points_Total 
FROM T2 
WHERE RN=1 
+0

謝謝!我也有SQL Server,我也試圖找出它。對不起,我很痛苦。 – Potter 2011-03-21 00:03:35

+0

@Potter - 我的答案應該適用於SQL Server 2005+ – 2011-03-21 00:04:51