PHOENIX -- The Arizona Diamondbacks have built their franchise-record start on comebacks, walk-offs and everyone taking a turn pulling the rope.
David Peralta and Chris Herrmann took their turn in the Diamondbacks' 6-5, 10-inning victory over the St. Louis Cardinals on Tuesday, Arizona's second walk-off victory in three games and its 28th comeback win of the year.
Peralta homered off Cardinals closer Seung Hwan Oh leading off the ninth inning to cap a comeback from a three-run deficit, and Herrmann singled home the game-winner in the 10th to give the D-backs their 13th victory in the past 15 games.
"Sometimes I leave the dugout shaking my head," D-backs manager Torey Lovullo said. "These guys believe, and that's a pretty powerful thing. This team never shuts down. These are the types of wins that show the character and the heart and the desire that we have. That's what we're building here. They believe in one another. They believe in the moment."
Rey Fuentes singled to open the 10th inning off Matt Bowman (1-3) before pitcher/pinch hitter Zack Godley sacrificed Fuentes to second. The D-backs were down to one position player when shortstop Nick Ahmed was removed after sustaining a fractured right wrist from being hit by a pitch in the eighth inning.
Herrmann followed with his game-winning hit, a day after he homered in the first inning of his first career start in the leadoff spot in a 6-1 victory over Philadelphia on Monday.
"A lot of good vibes," Herrmann said. "I feel really confident. I'm not trying to do too much. It was a tough win for us, but we got it done. We believe in that. Whatever it takes. We're going to find a way to win a game."
Right-hander Fernando Rodney (2-2) pitched the 10th for the victory. He has not given up a hit in his past 10 appearances and has not given up an earned run in his past 19.
D-backs third baseman Jake Lamb had three hits and Daniel Descalso had two, his fourth straight multiple-hit game.
Arizona (50-28) is three games ahead of the record pace set but the 2001 team. The D-backs are 30-10 at Chase Field and have won 15 of their past 17 home games.
St. Louis scored three runs on three hits and three errors in the seventh inning to take a 5-2 lead. Luke Voit singled before throwing errors by catcher Chris Iannetta and pitcher Taijuan Walker loaded the bases.
Stephen Piscotty singled off Walker's leg to drive in one run before Jedd Gyorko's sacrifice fly. Shortstop Ahmed bobbled a relay throw after Yadier Molina's single to enable another run to score for a 5-2 lead.
Gyorko drove in two runs for the Cardinals (35-41), who have lost four of six.
Arizona got close with two runs in the eighth off Trevor Rosenthal. Descalso had an RBI single and pinch hitter Herrmann hit a sacrifice fly on which left fielder Randal Grichuk made a diving catch with the bases loaded.
"We handed it to the back end (of the bullpen)," Cardinals manager Mike Matheny said. "Those guys didn't get it done today. It was one of those days."
Oh has converted 16 of 19 save opportunities, but he left a changeup over the middle of the plate that Peralta took to left field for his eighth homer leading off the ninth.
"Not making those pitches, and those are ending up as a hit or a homer," Oh said through a translator. "I need to get those out pitches right, especially in these one-run differences."
St. Louis starter Carlos Martinez gave up two runs on four hits in six innings. He struck out 10 and walked three.
Walker, Arizona's starting pitcher, gave up five runs (three earned) and six hits in 6 1/3 innings. He walked five and did not have any strikeouts.
NOTES: Arizona recalled RHP Braden Shipley from Triple-A Reno before the game and optioned RHP Silvino Bracho to Reno. ... Arizona OF Yasmany Tomas (groin) was 0-for-2 in his first rehab game in the rookie-level Arizona League on Tuesday. The D-backs are 16-5 without Tomas, who has been out since June 3. ... The Cardinals had a 15-game home run streak broken. It was the longest active streak in with majors.