PHOENIX -- Zack Greinke struck out eight in seven strong innings to lead Arizona to a 6-2 victory over the Colorado Rockies on Saturday night, ending the Diamondbacks' three-game losing streak.
Greinke (10-4) allowed two runs and three hits, one of those being Trevor Story's two-out, two-run homer in the top of the seventh to make it a one-run game. But the Diamondbacks scored three runs in the bottom of the inning to take control.
David Peralta doubled twice and drove in two runs for the Diamondbacks, who have not lost more than three consecutive games this season.
The Rockies, one night after stopping an eight-game losing streak, lost their ninth game in the past 10. Tyler Chatwood (6-9) pitched into the seventh inning but allowed four earned runs and seven hits, striking out six with three walks.
Daniel Descalso led off the bottom of the first with a hustle triple, a wide throw to third base allowing him to slide in safely. Peralta's ground ball to the right side then gave the Diamondbacks a 1-0 lead.
In the fourth, Paul Goldschmidt laced a triple into the right field corner to open the inning. With one out, Chris Owings lined a double just inside the left-field line to score Goldschmidt, and a wild pitch by Chatwood allowed Owings to score to make it 3-0.
Owings' double gave him four consecutive games with an extra-base hit, matching a career high.
Chatwood's strikeout of Jeff Mathis to start the bottom of the fifth was the 400th of his career.
The Rockies made it 3-2, with Story's fourth career home run off Greinke in 21 career at-bats.
But the bottom of the seventh started with a missed catch at first base by Mark Reynolds to allow the Diamondbacks' Rey Fuentes to reach. Mathis, with only seven RBIs going in, tripled in Fuentes, pinch-hitter Ketel Marte hit a sacrifice fly for a 5-2 lead and Peralta doubled in Marte.
Fernando Rodney got the game's final two outs for his 21st save and has a career-best 11 straight hitless outings. The Diamondbacks' three triples tied a game best, set 10 previous times.
In the bottom of the third, Chatwood caught a line drive off Greinke's bat that was hit so hard, it knocked the glove off Chatwood's hand. The ball fell out, but Chatwood recovered in time to pick up the ball and throw out Greinke at first base.
A sellout crowd of 46,338 was announced, the second-largest this season at Chase Field.
— FOX Sports Arizona (@FOXSPORTSAZ) July 2, 2017
ROTATION SET FOR L.A.
Diamondbacks manager Torey Lovullo named his starting rotation for a key division series with the first-place Los Angeles Dodgers that starts Tuesday at Dodger Stadium. It'll be left-hander Patrick Corbin, right-hander Zack Godley and lefty Robbie Ray in Thursday's finale.
"Just to split up the lefties," Lovullo said. "We just felt like … going left-right-left wasn't going to give (the Dodgers) a similar look back-to-back days, or allow guys to play back-to-back days and get in a good rhythm. It just made good baseball sense to split those two guys up."
Rockies: RHP German Marquez (5-4) will be facing Arizona for the fourth time this season. He's coming off a loss at San Francisco in which he allowed five runs and seven hits in four innings.
Diamondbacks: RHP Taijuan Walker (6-3) is 3-0 with a 2.70 ERA in his last four starts, and will be facing Colorado for the third time this season.