Each year, MLB hands out Silver Sluggers to the best hitter at each position in both leagues (three outfielders in both leagues regardless of where in the outfield they play).

The 2017 Silver Slugger recipients were announced on Thursday. Here are all the winners in both leagues.

American League

Catcher - Gary Sanchez, Yankees

In just his second season, Sanchez played in 122 games in 2017 finishing with a .278 average with 33 home runs, 90 RBIs, and 79 runs.

First base - Eric Hosmer, Royals

The 28-year-old Hosmer finished third in the American League batting .318 in 2017.

He appeared in all 162 games and posted totals of 25 dingers, 31 doubles, 94 RBIs, 98 runs, and six stolen bases.

Second base - Jose Altuve, Astros

Altuve won his third American League batting title in the past four years hitting .346 in 2017. In 153 games, he also had 24 home runs, 39 doubles, 81 RBIs, 112 runs, and 32 stolen bases.

Shortstop - Francisco Lindor, Indians

Playing in his third season in the big leagues, Lindor played 159 games in 2017 batting .273 with 33 long balls, 44 doubles, 89 RBIs, 99 runs, and 15 stolen bases.

Third base - Jose Ramirez, Indians

The 25-year-old Ramirez batted .318 in 152 games with 29 home runs, a major league-leading 56 doubles, 83 RBIs, 107 runs, and 17 stolen bases.

Outfield - Aaron Judge, Yankees

The likely 2017 American League Rookie of the Year (also is an American League MVP finalist), Judge hit .284 in 155 games with an American League-leading 52 home runs, 114 RBIs, a league-leading 128 runs, and nine stolen bases.

Outfield - Justin Upton, Tigers/Angels

Appearing in 152 games in 2017 with the Tigers and Angels, the 30-year-old Upton finished with a .273 average along with 35 home runs, 44 doubles, 109 RBIs, 100 runs, and 14 stolen bases.

Outfield - George Springer, Astros

Springer, the 2017 World Series MVP, played in 140 games in the regular season batting .283 with 34 home runs, 29 doubles, 85 RBIs, and 112 runs.

Designated hitter - Nelson Cruz, Mariners

The 37-year-old Cruz participated in 155 games in 2017 and had a .288 average with 39 home runs, 28 doubles, an American League-leading 119 RBIs, and 91 runs.

National League

Catcher - Buster Posey, Giants

The 2012 National League MVP played in 140 games in 2017. Posey ended the year with a .320 average, 12 homers, 34 doubles, 67 RBIs, 62 runs, and six stolen bases.

First base - Paul Goldschmidt, Diamondbacks

The 30-year-old Goldschmidt had another stellar season in 2017. In 155 games, he batted .297 with 36 home runs, 34 doubles, 120 RBIs, 117 runs, and 18 stolen bases.

Second base - Daniel Murphy, Nationals

In 144 games in 2017, the 32-year-old Murphy hit .322 with 23 home runs, 43 doubles (tied for the National League lead), 93 RBIs, and 94 runs.

Shortstop - Corey Seager, Dodgers

The National League Rookie of the Year in the previous year, Seager played in 145 games in 2017.

He ended with a .295 average with 22 homers, 33 doubles, 77 RBIs, and 85 runs.

Third base - Nolan Arenado, Rockies

Arenado played in 159 games in 2017 and hit for a .309 average along with 37 home runs, 43 doubles (tied with Murphy for most in the National League), 130 RBIs, and 100 runs.

Outfield - Giancarlo Stanton, Marlins

It was a monster 2017 season for Stanton as he led the majors with 59 home runs and 132 RBIs. In 159 games, he also batted .281 with 32 doubles and 123 runs.

Outfield - Marcell Ozuna, Marlins

In his fifth major league season, Ozuna played in 159 games in 2017 batting .312 with 37 home runs, 30 doubles, 124 RBIs, and 93 runs.

Outfield - Charlie Blackmon, Rockies

Blackmon led the National League in 2017 in average (.331), runs (137), triples (14), and hits (213).

In 159 games, he also had 35 doubles, 104 RBIs, and 14 stolen bases.

Pitcher - Adam Wainwright, Cardinals

Wainwright had 42 at bats in 2017 and finished with a .262 average. He had two home runs, two doubles, 11 RBIs, and seven runs.