Unbeaten Wade Miley held the Miami Marlins hitless until the sixth inning, and Jason Kubel drove in three runs to lead the Arizona Diamondbacks to an 8-4 victory Sunday.

Miley (3-0) gave up one hit and an unearned run in 6 1-3 innings to lower his ERA to 1.29. He also singled and scored the game's first run.

The retractable roof over the Marlins' new ballpark averted a rainout, because showers fell all day. But even inside, it was a gloomy afternoon for the home team, and boos rained down from the crowd of 34,918 during Arizona's five-run sixth inning.

The Marlins trailed 8-0 before they managed their first hit in the sixth inning, a leadoff double by John Buck. Miami has lost seven of its past eight games.

Gerardo Parra had two singles, two walks, a stolen base, a run and an RBI for the Diamondbacks. Teammate Aaron Hill had two hits and has reached base in 17 consecutive games.

Arizona came into the game batting .204 with runners in scoring position but went 6 for 16 in those situations.

Miami ace Josh Johnson (0-3) had another poor outing. He struck out eight but allowed 10 hits and five runs in 5 1-3 innings, and opponents are batting .350 against the 2010 NL ERA leader.

Giancarlo Stanton hit a three-run homer, his first this season, in the Miami ninth. He also drove in a run with a groundout.

Miley retired the first 11 batters before Hanley Ramirez reached when his grounder was mishandled by third baseman Cody Ransom. Buck's double prompted a standing ovation from the crowd, but Miley retired the next three batters.

The left-hander departed after the Diamondbacks committed two errors in the seventh. He struck out six and walked two.

Kubel had three hits, including a two-run double, and contributed two key defensive plays in the fifth inning. Stanton sent Kubel to the base of the left-field fence to catch a fly. Kubel then made a running grab of a fly by Gaby Sanchez, and Omar Infante — running from first base because he thought the ball was going to drop — was doubled off to end the inning.

Miami's slumping 1-2-3 hitters — Emilio Bonifacio, Jose Reyes and Ramirez — failed to get the ball out of the infield in 10 at-bats. The Marlins' batting average against left-handers fell to .169.

The Diamondbacks took a 1-0 lead in the third on consecutive singles by Miley, Willie Bloomquist and Parra. They added two runs in the fifth on a walk and consecutive singles by Justin Upton, Kubel and Miguel Montero.

Bloomquist's RBI single in the sixth chased Johnson from the game. Two-out, two-run doubles by Kubel and Ransom capped a five-run inning and made it 8-0. The Diamondbacks had a 12-0 advantage in hits at that point.

NOTES: The Diamondbacks committed three errors after totaling only 11 — second-fewest in the NL — in their first 21 games. ... NL newcomer Mark Buehrle pitches against the Diamondbacks for the first time Monday. They're the only NL West team he has never faced. ... Bloomquist has a .462 average (18 for 39) against Buehrle.