Miami starter Tom Koehler's only blemish was the third inning. He struck out four and didn't walk a batter in tossing seven solid innings.
After allowing two singles to lead off the fourth he retired 11 of the last 12 batters he faced. The one single he allowed was wiped out on a caught stealing.
Dickerson's home run was the 33rd to reach the third deck in Coors Field. The last player to do it was Brandon Moss on June 12, 2012, for Oakland. The last Colorado player to do it was Carlos Gonzalez as part of his cycle on July 31, 2010.
"I've done it a couple of times in (batting practice) and just joking around they tell me to do it in a game," Dickerson said. "I got a good pitch and put a pretty good swing on it."
Hechavarria saved a run in the bottom of the 12th when he raced out and made a leaping catch of Justin Morneau's blooper with two outs. Had the ball fallen Rockies pitcher and pinch-runner Tyler Matzek would have scored from third.
"I don't how he got to that ball. At the time, it was a huge game-saving play," Redmond said. "It's too bad we couldn't come back and flip a run out there, but it wasn't our night."
The Marlins had a rally going in the 11th when the first two batters reached. But the inning turned strange when Marcell Ozuna's line drive went off the glove of shortstop Josh Rutledge. Rutledge got the ball and tagged second for one out, and Casey McGehee was caught between second and third. He was tagged out in a rundown.
"I was just trying to get a ground ball out there and it ended up being a line drive," Rockies reliever Nick Masset said. "I was saying, 'Tag the guy, no tag the base.' Just excited about the way it went."
Marlins: No injury updates.
Rockies: OF Michael Cuddyer didn't start for the fourth consecutive game because of a sore left hamstring. Cuddyer pinch-hit in the 12th and drew a leadoff walk.
The Marlins will send LHP Brad Hand (2-5, 4.52) against RHP Christian Bergman (0-2, 7.20) in the last game of the three-game set. Bergman is making his first start since breaking his left hand in a start against Milwaukee on June 20.