MIAMI -- A nine-run lead in the third inning should make for an easy win. That was hardly the case for the Arizona Diamondbacks on Monday night.
Arizona had to hold off the struggling Florida Marlins, whose comeback fell just short as the Diamondbacks won 12-9.
"Give them credit, they pressured the daylights out of us," Arizona manager Kirk Gibson said.
Miguel Montero hit three doubles and drove in four runs, and pitcher Zach Duke hit a two-run homer for the Diamondbacks, who have won four of five. Juan Miranda had three RBIs and Justin Upton knocked in a pair.
"It was nice to see us swing the bats," Upton said. "This was a good series for us."
The Marlins have lost 11 of 12, finishing 1-10 on their homestand despite a season-high 16 hits.
"It was good to see that from the offense," Florida manager Edwin Rodriguez said.
The Diamondbacks led 9-0 in the third inning, but Florida pulled within 12-9 in the eighth on a two-run single by John Buck.
J.J. Putz earned his 18th save in 20 chances by pitching a scoreless ninth.
"It's good we're going home with a win," Gibson said.
Ricky Nolasco (4-2) allowed nine runs -- five earned -- in three innings for the Marlins. It was the second time in four starts he has allowed at least eight runs. He gave up eight in a loss to the Dodgers on May 29.
"This one is on me," Nolasco said. "It wasn't my day. It was a rough one. Anytime we score nine runs, I expect myself to win."
Upton had an RBI single in the first to start the scoring before Montero cleared the bases with a three-run double to right-center that rolled to the wall for a 4-0 lead.
"I went out there looking for a fastball, middle or middle-in," Montero said.
After sending nine batters to the plate in the first, the Diamondbacks struck again in the third, sending 10 to the dish and scoring five to lead 9-0. Montero doubled in a run before Duke launched his second career homer over the right-field fence. The two-run shot by Duke was his second homer of the season.
"That's about the only positive," he said of his performance.
Duke allowed seven runs and 13 hits in 4 2/3 innings, finishing one out short of qualifying for the win despite an early nine-run lead.
"It's a bad performance by me," Duke said. "I wasn't able to get us through six or seven innings, which is what you want to do in that situation."
Micah Owings (3-0) picked up the win by pitching 2 1/3 innings in relief.
The Diamondbacks took the season series with the Marlins 5-2, outscoring Florida 53-35. ... Pitchers on both teams combined to go 3 for 6 with a home run, two doubles and two RBIs. ... Marlins SS Hanley Ramirez (back) will be reinstated from the disabled list Tuesday and is expected to bat in the leadoff spot against the Phillies. In a corresponding move, the Marlins placed OF Scott Cousins (lower back strain) on the 15-day disabled list. ... The start of the game was delayed 16 minutes due to inclement weather.