In MLB, 7 players have done it.
1) Jim Gentile, 1961 Baltimore Orioles
2) Jim Northrup, 1968 Detroit Tigers
3) Frank Robinson, 1970 Baltimore Orioles
4) Robin Ventura, 1995 Chicago White Sox
5) Fernando Tatis, 1999 St. Louis Cardinals
6) Bill Mueller, 2003 Boston Red Sox
7) Josh Willingham, 2009 Washington Nationals.
and Moises Alou did it in the same inning off the same pitcher.
The statistic usually recorded is "At Bats per Home Run."
In other words, how many at bats would, on the average, occur before the player would hit a home run.
Baseball records along these lines generally require 1000 plate appearances.
The all-time leader is Mark McGwire, who would need only (on the average) 10.61 at-bats between home runs.
Ted Williams is one of the players who hit a HR in last Major League at bat.
According to baseball-reference.com, none. Odd, huh?
five baseball players
There Are 750 Pro Baseball Players In The World
Every Single MLB Player Has Hit A Homerun.
Yastrzemski, Carl (1)