The Pirates swept the three-game series and improved to 70-44, the best record in the majors. Miami lost its fifth in a row.
Josh Harrison opened the 10th with a single off Steve Ames (0-1) and took second on Clint Barmes' sacrifice bunt. After Jose Tabata bounced out and Starling Marte was intentionally walked, Martin batted for Jared Hughes (2-2) and grounded a single down the left-field line.
Neil Walker had three hits and two RBIs for Pittsburgh. Marte had two hits. Marlins rookie Christian Yelich had three hits, including his first major league homer.