He played in Major League Baseball (MLB) for the Cincinnati Reds, Oakland Athletics, Texas Rangers, San Diego Padres, Arizona Diamondbacks, and Cleveland Indians.
[7] On February 1, 2010, Rosales was traded along with Willy Taveras to the Oakland Athletics for Aaron Miles and a player to be named later.
[8] In his first three years with the A's, Rosales batted .234 with a .292 on-base percentage in 415 at-bats, 11 home runs, 47 RBIs, and two stolen bases in four attempts.
[11] In the ninth inning of a game on May 8, 2013, Rosales hit what appeared to be a game tying home run, but it was ruled a double, despite the ball hitting a railing in left field above the outfield wall and bouncing back onto the field.
Umpire Ángel Hernández and his crew reviewed the play, and upheld the original ruling as a double.
Following the controversial call, manager Bob Melvin was ejected for arguing; the A's went on to lose to the Cleveland Indians by a score of 4–3.
[12] Rosales got a lot of starting time at shortstop with Jed Lowrie playing second base against left-handed pitchers.
However, after a long run of facing right-handed starters and the emergence of Grant Green, Rosales was designated for assignment on July 8.
[14][15] When the Athletics acquired Alberto Callaspo on July 31, coincidentally for Green, Rosales was designated for assignment, starting his 11-day journey.
[16] Rosales did not appear in any games for the Rangers prior to being designated for assignment on August 5 to make room for Joey Butler.
On February 8, 2019, Rosales signed a minor league deal with the Twins that included an invitation to spring training.