Player Season & Career Stats Finder - College Basketball
Current Search
For single seasons, in 2024-25, in NCAA D-I Men's Basketball, sorted by descending Points.
THIS QUESTION WAS ANSWERED USING
POWERED BY
Your All Access Pass to the
College Basketball
Database
Go beyond the basics. Become a Stathead
Start Your FREE Trial
Display Query »
--------------------------------------
main
Page Setup Time: 0.00160 seconds
SELECT name_display, name_display_csk, sup_players.link as name_display_link, IFNULL(age, "") as age, GROUP_CONCAT(DISTINCT CONCAT("<a href=\"", "DOMAIN", REPLACE(ts.link,"cbb/",""), "\" target=\"_blank\">", ts.name_short, "</a>")) as teams_played_for, year_id as year_id_csk, CONCAT(year_id-1,"-",SUBSTRING(year_id,3,2)) as year_id, is_complete_comp_season, primary_pos as pos, GROUP_CONCAT(DISTINCT sup_comp_seasons.name_abbr) as comp_name_abbr, person_id, comp_id, phase_id, CASE
WHEN class = "FR" THEN 1
WHEN class = "SO" THEN 2
WHEN class = "JR" THEN 3
WHEN class = "SR" THEN 4
ELSE 0
END as class_csk, IFNULL(class,"") as class, SUM(games) AS games, SUM(games_started) AS games_started, SUM(mp) AS mp, SUM(fg) AS fg, SUM(fga) AS fga, SUM(fg - IFNULL(fg3, 0)) AS fg2, SUM(fga - IFNULL(fg3a, 0)) AS fg2a, SUM(fg3) AS fg3, SUM(fg3a) AS fg3a, SUM(ft) AS ft, SUM(fta) AS fta, SUM(orb) AS orb, SUM(trb - orb) AS drb, SUM(trb) AS trb, SUM(ast) AS ast, SUM(stl) AS stl, SUM(blk) AS blk, SUM(tov) AS tov, SUM(pf) AS pf, SUM(pts) AS pts, IF(SUM(fga), SUM(fg * (fga IS NOT NULL)) / SUM(fga), NULL) as fg_pct_csk, TRIM(LEADING '0' FROM ROUND(IF(SUM(fga), SUM(fg * (fga IS NOT NULL)) / SUM(fga), NULL),3)) AS fg_pct, SUM(fg * (fga IS NOT NULL) - IFNULL(fg3 * (fg3a IS NOT NULL), 0)) / SUM(fga - IFNULL(fg3a, 0)) as fg2_pct_csk, TRIM(LEADING '0' FROM ROUND(SUM(fg * (fga IS NOT NULL) - IFNULL(fg3 * (fg3a IS NOT NULL), 0)) / SUM(fga - IFNULL(fg3a, 0)),3)) AS fg2_pct, IF(SUM(fg3a), SUM(fg3 * (fg3a IS NOT NULL)) / SUM(fg3a), NULL) as fg3_pct_csk, TRIM(LEADING '0' FROM ROUND(IF(SUM(fg3a), SUM(fg3 * (fg3a IS NOT NULL)) / SUM(fg3a), NULL),3)) AS fg3_pct, IF(SUM(fta), SUM(ft * (fta IS NOT NULL)) / SUM(fta), NULL) as ft_pct_csk, TRIM(LEADING '0' FROM ROUND(IF(SUM(fta), SUM(ft * (fta IS NOT NULL)) / SUM(fta), NULL),3)) AS ft_pct, IF(SUM(fga + fta), SUM(pts * (fga IS NOT NULL)) / SUM(2 * (fga + 0.475 * fta)), NULL) as ts_pct_csk, TRIM(LEADING '0' FROM ROUND(IF(SUM(fga + fta), SUM(pts * (fga IS NOT NULL)) / SUM(2 * (fga + 0.475 * fta)), NULL),3)) AS ts_pct, IF(SUM(fga), SUM(fg * (fga IS NOT NULL) + 0.5 * IFNULL(fg3, 0)) / SUM(fga), NULL) as efg_pct_csk, TRIM(LEADING '0' FROM ROUND(IF(SUM(fga), SUM(fg * (fga IS NOT NULL) + 0.5 * IFNULL(fg3, 0)) / SUM(fga), NULL),3)) AS efg_pct
FROM sup_player_team_seasons as st
JOIN sup_people USING (person_id)
JOIN sup_players USING (person_id)
JOIN sup_phase_seasons USING (comp_id, phase_id, year_id)
JOIN sup_comp_seasons USING (comp_id, year_id)
JOIN (SELECT team_id, year_id, name_abbr, link, phase_id, comp_id, name_short, conf_id FROM sup_team_seasons) as ts USING (team_id, year_id, phase_id, comp_id)
LEFT JOIN (SELECT parent_conf_id, conf_id, conf_name, conf_abbr, link, comp_id, year_id FROM sup_conference_seasons) as team_conf USING (conf_id, comp_id, year_id)
WHERE year_id<=?
AND comp_id=?
AND phase_id = 'season-total'
AND year_id>=?
GROUP BY person_id, year_id
ORDER BY pts DESC, person_id LIMIT 0, 20
SQL PARAMS -- $VAR1 = [
2025,
'NCAAM',
2025
];
Query Time: 0.20 seconds
Table Build Time: 0.05 seconds
--------------------------------------
SH->PARAM -- $VAR1 = {
'display_type' => 'totals',
'year_max' => 2025,
'match' => 'player_season',
'comp_id' => 'NCAAM',
'phase_id' => 1,
'order_by' => 'pts',
'draft_pick_type' => 'overall',
'year_min' => 2025
};
SH->PARAM_NO_DEFAULT -- $VAR1 = {
'year_max' => 2025,
'phase_id' => 1,
'comp_id' => 'NCAAM',
'year_min' => 2025
};
--------------------------------------
main
Page Setup Time: 0.00160 seconds
SELECT name_display, name_display_csk, sup_players.link as name_display_link, IFNULL(age, "") as age, GROUP_CONCAT(DISTINCT CONCAT("<a href=\"", "DOMAIN", REPLACE(ts.link,"cbb/",""), "\" target=\"_blank\">", ts.name_short, "</a>")) as teams_played_for, year_id as year_id_csk, CONCAT(year_id-1,"-",SUBSTRING(year_id,3,2)) as year_id, is_complete_comp_season, primary_pos as pos, GROUP_CONCAT(DISTINCT sup_comp_seasons.name_abbr) as comp_name_abbr, person_id, comp_id, phase_id, CASE
WHEN class = "FR" THEN 1
WHEN class = "SO" THEN 2
WHEN class = "JR" THEN 3
WHEN class = "SR" THEN 4
ELSE 0
END as class_csk, IFNULL(class,"") as class, SUM(games) AS games, SUM(games_started) AS games_started, SUM(mp) AS mp, SUM(fg) AS fg, SUM(fga) AS fga, SUM(fg - IFNULL(fg3, 0)) AS fg2, SUM(fga - IFNULL(fg3a, 0)) AS fg2a, SUM(fg3) AS fg3, SUM(fg3a) AS fg3a, SUM(ft) AS ft, SUM(fta) AS fta, SUM(orb) AS orb, SUM(trb - orb) AS drb, SUM(trb) AS trb, SUM(ast) AS ast, SUM(stl) AS stl, SUM(blk) AS blk, SUM(tov) AS tov, SUM(pf) AS pf, SUM(pts) AS pts, IF(SUM(fga), SUM(fg * (fga IS NOT NULL)) / SUM(fga), NULL) as fg_pct_csk, TRIM(LEADING '0' FROM ROUND(IF(SUM(fga), SUM(fg * (fga IS NOT NULL)) / SUM(fga), NULL),3)) AS fg_pct, SUM(fg * (fga IS NOT NULL) - IFNULL(fg3 * (fg3a IS NOT NULL), 0)) / SUM(fga - IFNULL(fg3a, 0)) as fg2_pct_csk, TRIM(LEADING '0' FROM ROUND(SUM(fg * (fga IS NOT NULL) - IFNULL(fg3 * (fg3a IS NOT NULL), 0)) / SUM(fga - IFNULL(fg3a, 0)),3)) AS fg2_pct, IF(SUM(fg3a), SUM(fg3 * (fg3a IS NOT NULL)) / SUM(fg3a), NULL) as fg3_pct_csk, TRIM(LEADING '0' FROM ROUND(IF(SUM(fg3a), SUM(fg3 * (fg3a IS NOT NULL)) / SUM(fg3a), NULL),3)) AS fg3_pct, IF(SUM(fta), SUM(ft * (fta IS NOT NULL)) / SUM(fta), NULL) as ft_pct_csk, TRIM(LEADING '0' FROM ROUND(IF(SUM(fta), SUM(ft * (fta IS NOT NULL)) / SUM(fta), NULL),3)) AS ft_pct, IF(SUM(fga + fta), SUM(pts * (fga IS NOT NULL)) / SUM(2 * (fga + 0.475 * fta)), NULL) as ts_pct_csk, TRIM(LEADING '0' FROM ROUND(IF(SUM(fga + fta), SUM(pts * (fga IS NOT NULL)) / SUM(2 * (fga + 0.475 * fta)), NULL),3)) AS ts_pct, IF(SUM(fga), SUM(fg * (fga IS NOT NULL) + 0.5 * IFNULL(fg3, 0)) / SUM(fga), NULL) as efg_pct_csk, TRIM(LEADING '0' FROM ROUND(IF(SUM(fga), SUM(fg * (fga IS NOT NULL) + 0.5 * IFNULL(fg3, 0)) / SUM(fga), NULL),3)) AS efg_pct
FROM sup_player_team_seasons as st
JOIN sup_people USING (person_id)
JOIN sup_players USING (person_id)
JOIN sup_phase_seasons USING (comp_id, phase_id, year_id)
JOIN sup_comp_seasons USING (comp_id, year_id)
JOIN (SELECT team_id, year_id, name_abbr, link, phase_id, comp_id, name_short, conf_id FROM sup_team_seasons) as ts USING (team_id, year_id, phase_id, comp_id)
LEFT JOIN (SELECT parent_conf_id, conf_id, conf_name, conf_abbr, link, comp_id, year_id FROM sup_conference_seasons) as team_conf USING (conf_id, comp_id, year_id)
WHERE year_id<=?
AND comp_id=?
AND phase_id = 'season-total'
AND year_id>=?
GROUP BY person_id, year_id
ORDER BY pts DESC, person_id LIMIT 0, 20
SQL PARAMS -- $VAR1 = [
2025,
'NCAAM',
2025
];
Query Time: 0.20 seconds
Table Build Time: 0.05 seconds
--------------------------------------
SH->PARAM -- $VAR1 = {
'display_type' => 'totals',
'year_max' => 2025,
'match' => 'player_season',
'comp_id' => 'NCAAM',
'phase_id' => 1,
'order_by' => 'pts',
'draft_pick_type' => 'overall',
'year_min' => 2025
};
SH->PARAM_NO_DEFAULT -- $VAR1 = {
'year_max' => 2025,
'phase_id' => 1,
'comp_id' => 'NCAAM',
'year_min' => 2025
};
Men's Coverage: Most player stats are available back to 1986-87. PTS, FG, FT, PF mostly complete to 1947-48.
Women's Coverage: Player stats are complete back to 2002-03. Player stats are mostly complete back to 1981-82.
For complete details regarding the level of coverage for each stat year by year, please see our player season coverage page.



We're Social...for Statheads
Site Last Updated:
Question, Comment, Feedback, or Correction?
Subscribe to our Free Email Newsletter
Do you have a sports website? Or write about sports? We have tools and resources that can help you use sports data. Find out more.