The Los Angeles Dodgers selected Sweeney in the 13th round, with the 416th overall pick, of the 2012 MLB draft.[4] In 2012 with the Ogden Raptors of the Pioneer League he hit .303 and stole 10 bases in 16 games. On July 8, 2012, he was called up to the Great Lakes Loons of the Midwest League. There, Sweeney hit .291 with 23 RBI, 5 home runs and 17 17 stolen bases over 51 games. In 2013 with the Rancho Cucamonga Quakes of the California League, he hit .275 in 134 games with 11 home runs, 75 RBI and 48 stolen bases. Sweeney was promoted to the Double-A Chattanooga Lookouts for the 2014 season. He was selected to the mid-season Southern League All-Star Game.[5] In 132 games, he hit .288 with 14 homers and 57 RBI. After the season, he played with the Glendale Desert Dogs in the Arizona Fall League and was selected to the AFL Top Prospects List.[6] The Dodgers invited Sweeney to attend major league spring training in 2015.[7] He was assigned to the Triple-A Oklahoma City Dodgers[8] and selected to the mid-season all-star team.[9]
Philadelphia Phillies
On August 19, 2015, Sweeney and fellow minor leaguer John Richy were traded to the Philadelphia Phillies in exchange for Chase Utley.[10] The Phillies immediately added Sweeney to the major league roster.[11] He made his MLB debut August 20 as a pinch hitter.[12] His first major league hit – a home run – came on August 22 in Miami against the Marlins.[13]
Los Angeles Dodgers (second stint)
On November 11, 2016, he was traded back to the Dodgers (along with Darin Ruf) in exchange for Howie Kendrick[14] and was assigned to Oklahoma City to begin the season.[15] In 38 games for Oklahoma City in 2017, he slashed .227/.290/.412 with four home runs and 15 RBI.
Cincinnati Reds
On May 27, 2017, Sweeney was traded to the Cincinnati Reds in exchange for future considerations.[16] He played in 81 games for the Triple–A Louisville Bats, slashing .281/.355/.420 with seven home runs, 29 RBI, 11 RBI. Sweeney was released by the Reds organization on March 31, 2018.[17]
Toronto Blue Jays
On April 3, 2018, Sweeney signed a minor league contract with the Toronto Blue Jays, and was assigned to the Triple-ABuffalo Bisons.[18] He was called up by the Blue Jays on June 29 to replace Steve Pearce, who had been traded to the Boston Red Sox. He was outrighted to Triple-A on July 5, 2018. Sweeney was recalled by the Blue Jays on July 31, and designated for assignment on August 2.[19] He elected free agency on October 2.[20]
On June 12, 2019, Sweeney's contract was purchased by the Pittsburgh Pirates organization.[21] In 45 games split between the Double–A Altoona Curve and Triple–A Indianapolis Indians, he hit a combined .214/.272/.364 with four home runs and 18 RBI. Sweeney elected free agency following the season on November 4.[22]
Sweeney was returned to the Kansas City T-Bones after the 2020 season on September 11, 2020. The team changed their name to the Kansas City Monarchs in the offseason. Sweeney played in 97 games for Kansas City in 2021, slashing .262/.354/.484 with 19 home runs, 69 RBI, and 22 stolen bases.
Sweeney played in 92 games for the Monarchs in 2022, being named an All-Star after posting a .321/.410/.490 slash line with 13 home runs, 49 RBI, and 31 stolen bases.[23] He was released on October 27, 2022.
Sioux Falls Canaries
On May 2, 2023, Sweeney signed with the Sioux Falls Canaries of the American Association of Professional Baseball.[24] In 98 games for the Canaries, he batted .283/.390/.508 with 19 home runs, 57 RBI, and 20 stolen bases. In addition, Sweeney was named an All–Star for the Canaries during the season.[25]
Pericos de Puebla
On January 2, 2024, Sweeney signed with the Pericos de Puebla of the Mexican League.[26] In five games for Puebla, he went 0–for–2 with a stolen base. On April 22, Sweeney was released by the Pericos.[27]
On May 18, 2024, Sweeney announced his retirement from professional baseball via Instagram.[28]