Team Season Finder - College Basketball
Current Search
For single seasons, from 1947-48 to 2024-25, in NCAA D-I Men's Basketball, sorted by descending Wins.
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.00126 seconds
SELECT year_id as year_id_csk, CONCAT(year_id-1,"-",SUBSTRING(year_id,3,2)) as year_id, ts.name_short as team_name_abbr, ts.link as team_link, comp_id, GROUP_CONCAT(DISTINCT sup_comp_seasons.name_abbr) as comp_name_abbr, SUM(games) AS games, SUM(wins) AS wins, SUM(losses) AS losses, SUM(wins) / SUM(wins + losses) as win_loss_pct_csk, TRIM(LEADING '0' FROM ROUND(SUM(wins) / SUM(wins + losses),3)) AS win_loss_pct, 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_team_seasons as ts
JOIN sup_phase_seasons USING (comp_id, phase_id, year_id)
JOIN sup_comp_seasons USING (comp_id, year_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)
JOIN (SELECT team_id, year_id, phase_id, comp_id, is_major_school FROM mod_team_seasons_flags WHERE is_major_school=1 ) as tmajor USING (team_id, year_id, phase_id, comp_id)
WHERE comp_id=?
AND year_id<=?
AND year_id>=?
AND phase_id = 'season-total'
GROUP BY year_id, team_id
ORDER BY wins DESC, year_id DESC, team_id LIMIT 0, 20
SQL PARAMS -- $VAR1 = [
'NCAAM',
2025,
1948
];
Query Time: 0.65 seconds
Table Build Time: 0.05 seconds
--------------------------------------
SH->PARAM -- $VAR1 = {
'order_by' => 'wins',
'comp_id' => 'NCAAM',
'match' => 'team_season',
'year_max' => 2025,
'year_min' => 1948,
'display_type' => 'team_totals',
'phase_id' => 1
};
SH->PARAM_NO_DEFAULT -- $VAR1 = {
'year_min' => 1948,
'year_max' => 2025,
'phase_id' => 1,
'comp_id' => 'NCAAM'
};
--------------------------------------
main
Page Setup Time: 0.00126 seconds
SELECT year_id as year_id_csk, CONCAT(year_id-1,"-",SUBSTRING(year_id,3,2)) as year_id, ts.name_short as team_name_abbr, ts.link as team_link, comp_id, GROUP_CONCAT(DISTINCT sup_comp_seasons.name_abbr) as comp_name_abbr, SUM(games) AS games, SUM(wins) AS wins, SUM(losses) AS losses, SUM(wins) / SUM(wins + losses) as win_loss_pct_csk, TRIM(LEADING '0' FROM ROUND(SUM(wins) / SUM(wins + losses),3)) AS win_loss_pct, 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_team_seasons as ts
JOIN sup_phase_seasons USING (comp_id, phase_id, year_id)
JOIN sup_comp_seasons USING (comp_id, year_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)
JOIN (SELECT team_id, year_id, phase_id, comp_id, is_major_school FROM mod_team_seasons_flags WHERE is_major_school=1 ) as tmajor USING (team_id, year_id, phase_id, comp_id)
WHERE comp_id=?
AND year_id<=?
AND year_id>=?
AND phase_id = 'season-total'
GROUP BY year_id, team_id
ORDER BY wins DESC, year_id DESC, team_id LIMIT 0, 20
SQL PARAMS -- $VAR1 = [
'NCAAM',
2025,
1948
];
Query Time: 0.65 seconds
Table Build Time: 0.05 seconds
--------------------------------------
SH->PARAM -- $VAR1 = {
'order_by' => 'wins',
'comp_id' => 'NCAAM',
'match' => 'team_season',
'year_max' => 2025,
'year_min' => 1948,
'display_type' => 'team_totals',
'phase_id' => 1
};
SH->PARAM_NO_DEFAULT -- $VAR1 = {
'year_min' => 1948,
'year_max' => 2025,
'phase_id' => 1,
'comp_id' => 'NCAAM'
};
Men's Coverage: Most teams stats are available back to 1986-87. PTS, FG, FT, TRB mostly complete to 1947-48.
Women's Coverage: Team stats are complete back to 2002-03. Team 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 school 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.