Player Season & Career Stats Finder - Hockey
Current Search
For single seasons, playing skater, in the regular season, sorted by descending Goals.
THIS QUESTION WAS ANSWERED USING
POWERED BY
Your All Access Pass to the
Hockey
Database
Go beyond the basics. Become a Stathead
Start Your FREE Trial
Display Query »
--------------------------------------
main
Page Setup Time: 0.00122 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', ts.link, '" target="_blank">', ts.name_abbr, '</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, SUBSTRING_INDEX(st.pos, '/', 1) as pos, GROUP_CONCAT(DISTINCT sup_comp_seasons.name_abbr) as comp_name_abbr, person_id, comp_id, phase_id, SUM(games) AS games, SUM(goals) AS goals, SUM(assists) AS assists, SUM(points) AS points, SUM(plus_minus) AS plus_minus, SUM(pen_min) AS pen_min, SUM(goals - (goals_pp + goals_sh)) AS goals_ev, SUM(goals_pp) AS goals_pp, SUM(goals_sh) AS goals_sh, SUM(goals_gw) AS goals_gw, SUM(shots) AS shots, SUM(goals*(year_id>=1960))/SUM(shots) as shot_pct_csk, ROUND(100 * (SUM(goals*(year_id>=1960))/SUM(shots)),1) AS shot_pct, SUM(time_on_ice)/60 as time_on_ice_csk, IF(SUM(st.time_on_ice),IF(
MOD(SUM(time_on_ice), 60) = 60,
CONCAT_WS(':', FLOOR(SUM(time_on_ice) / 60) + 1, '00'),
CONCAT_WS(':', FLOOR(SUM(time_on_ice) / 60), LPAD(MOD(SUM(time_on_ice), 60),2,'0'))
),NULL) AS time_on_ice, SUM(faceoff_wins) AS faceoff_wins, SUM(faceoff_losses) AS faceoff_losses, SUM(faceoff_wins)/(SUM(faceoff_wins)+SUM(faceoff_losses)) as faceoff_percentage_csk, ROUND(100 * (SUM(faceoff_wins)/(SUM(faceoff_wins)+SUM(faceoff_losses))),1) AS faceoff_percentage, SUM(hits) AS hits, SUM(blocks) AS blocks
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 FROM sup_team_seasons) as ts USING (team_id, year_id, phase_id, comp_id)
WHERE phase_id=?
AND st.pos != 'G'
AND comp_id=?
GROUP BY person_id, year_id
ORDER BY goals DESC, person_id LIMIT 0, 20
SQL PARAMS -- $VAR1 = [
'NHL_RS',
'NHL'
];
Query Time: 1.90 seconds
Table Build Time: 0.05 seconds
--------------------------------------
SH->PARAM -- $VAR1 = {
'match' => 'player_season',
'rookie' => 'N',
'draft_pick_type' => 'overall',
'comp_type' => 'reg',
'pos' => 'S',
'season_end' => -1,
'order_by' => 'goals',
'season_start' => 1,
'comp_id' => 'NHL'
};
SH->PARAM_NO_DEFAULT -- $VAR1 = {
'comp_id' => 'NHL'
};
--------------------------------------
main
Page Setup Time: 0.00122 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', ts.link, '" target="_blank">', ts.name_abbr, '</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, SUBSTRING_INDEX(st.pos, '/', 1) as pos, GROUP_CONCAT(DISTINCT sup_comp_seasons.name_abbr) as comp_name_abbr, person_id, comp_id, phase_id, SUM(games) AS games, SUM(goals) AS goals, SUM(assists) AS assists, SUM(points) AS points, SUM(plus_minus) AS plus_minus, SUM(pen_min) AS pen_min, SUM(goals - (goals_pp + goals_sh)) AS goals_ev, SUM(goals_pp) AS goals_pp, SUM(goals_sh) AS goals_sh, SUM(goals_gw) AS goals_gw, SUM(shots) AS shots, SUM(goals*(year_id>=1960))/SUM(shots) as shot_pct_csk, ROUND(100 * (SUM(goals*(year_id>=1960))/SUM(shots)),1) AS shot_pct, SUM(time_on_ice)/60 as time_on_ice_csk, IF(SUM(st.time_on_ice),IF(
MOD(SUM(time_on_ice), 60) = 60,
CONCAT_WS(':', FLOOR(SUM(time_on_ice) / 60) + 1, '00'),
CONCAT_WS(':', FLOOR(SUM(time_on_ice) / 60), LPAD(MOD(SUM(time_on_ice), 60),2,'0'))
),NULL) AS time_on_ice, SUM(faceoff_wins) AS faceoff_wins, SUM(faceoff_losses) AS faceoff_losses, SUM(faceoff_wins)/(SUM(faceoff_wins)+SUM(faceoff_losses)) as faceoff_percentage_csk, ROUND(100 * (SUM(faceoff_wins)/(SUM(faceoff_wins)+SUM(faceoff_losses))),1) AS faceoff_percentage, SUM(hits) AS hits, SUM(blocks) AS blocks
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 FROM sup_team_seasons) as ts USING (team_id, year_id, phase_id, comp_id)
WHERE phase_id=?
AND st.pos != 'G'
AND comp_id=?
GROUP BY person_id, year_id
ORDER BY goals DESC, person_id LIMIT 0, 20
SQL PARAMS -- $VAR1 = [
'NHL_RS',
'NHL'
];
Query Time: 1.90 seconds
Table Build Time: 0.05 seconds
--------------------------------------
SH->PARAM -- $VAR1 = {
'match' => 'player_season',
'rookie' => 'N',
'draft_pick_type' => 'overall',
'comp_type' => 'reg',
'pos' => 'S',
'season_end' => -1,
'order_by' => 'goals',
'season_start' => 1,
'comp_id' => 'NHL'
};
SH->PARAM_NO_DEFAULT -- $VAR1 = {
'comp_id' => 'NHL'
};
Data coverage: NHL all-time (since 1917-18) unless otherwise noted. Even Strength, Power Play, and Short-Handed Goals available since 1933-34. Plus/Minus and Shots available since 1959-60. Time on Ice available since 1998-99. Advanced stats (such as Corsi, Fenwick, and Expected Goals) since 2007-08.


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.