DENVER (AP) — Ezequiel Tovar singled through a five-man infield during a ninth-inning storm, lifting Colorado over the Miami Marlins 7-6 Thursday after the Rockies wasted a four-run lead in the top of the inning.
Colorado took a 6-2 lead with four runs in the eighth, but Jorge Soler and pinch-hitter Garrett Cooper hit two-run homers on curveballs from Pierce Johnson in the ninth.
Huascar Brazobán (0-1) walked Kris Bryant and Elias Díaz on four pitches each starting the bottom half, retired Randal Grichuk on a flyout and after getting ahead of Ryan McMahon 0-2, threw four straight balls that loaded the bases.
Amid a downpour with thunder and lightning overhead, the Marlins moved right fielder Garrett Hampson to the infield and Tovar hit a chopper past diving third baseman Jean Segura into left field.
"Crazy game, man," McMahon said. "But we did what we had to do. They aren't all pretty."
Brent Suter (3-0) got the final out of the ninth for the Rockies, who took three of four in the series. Díaz homered for the second straight game for Colorado in its first walk-off win of the season.
Rockies rookie centerfielder Brenton Doyle left on a cart in the ninth with a bruised right knee after he was injured leaping in an attempt to deny Soler a home run.
"Ligaments are fine. It doesn't feel good, but good news," Doyle said. "I'm not sure about an IL stint or not. But it's going to take probably a couple days to feel better."
McMahon hit a tiebreaking RBI double in the four-run eighth. Díaz tied it with a solo shot to lead off the sixth against Braxton Garrett, his second homer in as many days. Doyle added an RBI single in the eighth.
Soler hit his 15th homer and third in as many games. Yuli Gurriel added an RBI triple off Kyle Freeland in the third the Marlins.
"Tough loss, no doubt," Marlins manager Skip Schumaker said. "We felt really good about (the comeback), but unfortunately a few walks and it kind of cost us the game."
With two lefty starters and a day game after a night game, both teams had revamped looks. Luis Arrárez, batting a big league-best .371, was out of Miami's lineup. Charlie Blackmon and Jurickson Profar didn't start for Colorado.
Gurriel put Miami ahead in the third with a one-out, RBI triple that hugged the third-base line. The 38-year-old Gurriel became the oldest player with triples in consecutive games since 40-year-old Kenny Lofton for Cleveland in 2007.
Jonathan Davis, acquired from Detroit on Monday, had his own triple an inning later and scored on Xavier Edwards' single. Davis went 3 for 3 with a walk and is 6 for 7 with his new team.
Garrett went five-plus, giving up two runs and six hits. Freeland allowed two runs and seven hits over five innings.
"The ninth got crazy, but we're here to pick guys up. We're here to pick up Pierce," Freeland said. "Rough outing, but we ended up coming through."
The Rockies released veteran reliever Fernando Abad, four days after he was designated for assignment.
Marlins: Arráez said he felt fine after exiting Wednesday's game with a left leg cramp.
Rockies: 1B C.J. Cron (back spasms) is eligible to come off the 10-day injured list, but has yet to begin swinging a bat. "When it spasms up, everything kind of locks up on me and it's tough to move for a little while," Cron said. "Movement is a lot better. Now just trying to start loosening it up." ... McMahon stayed in after taking teammate Michael Toglia's liner off his back while leading off third in foul territory in the fourth.
Marlins: LHP Jesús Luzardo (3-3, 3.83 ERA), roughed up in his last outing, starts Friday night in Anaheim against Los Angeles Angels LHP Reid Detmers (0-3, 4.87).
Rockies: Continue a stretch of facing three former Cy Young Award winners in four days when RHP Max Scherzer (3-2, 4.01 ERA) and the New York Mets visit Coors Field on Friday night. RHP Connor Seabold (1-1, 5.97) starts for Colorado. Miami's Sandy Alcantara pitched in Denver on Wednesday and Justin Verlander goes Saturday. "I like the challenge," manager Bud Black said.