
Gabriel Moreno hit a three-run homer and scored twice as the visiting Arizona Diamondbacks held off the St. Louis Cardinals 8-7 on Tuesday
Nick Ahmed hit a two-run double for the Diamondbacks, who have won three straight games and eight of their last 11
Arizona starter Drey Jameson allowed two runs on three hits and four walks in 3 2/3 innings. Kyle Nelson (3-0), the first of six relievers, earned the victory and Miguel Castro earned his first save.
Cardinals starting pitcher Jordan Montgomery (2-2) allowed seven runs on 10 hits in four innings
Willson Contreras hit two homers and drove in three runs for the Cardinals, who lost for the fourth time in their last six games
Paul Goldschmidt's first-inning homer put the Cardinals up 1-0
Tyler O'Neill hit a double and Dylan Carlson and Taylor Motter drew walks in the second inning. With two outs, Lars Nootbaar reached on an infield single to put the Cardinals up 2-0
Arizona cut its deficit in half in the third inning as Moreno hit a double and scored on a single by Josh Rojas.
The Diamondbacks surged ahead 7-2 in the fourth inning. Lourdes Gurriel Jr. led off with a single, Christian Walker hit an RBI double and Evan Longoria hit a single to put runners at the corners
Jake McCarthy reached on a fielder's choice grounder as the Cardinals caught Walker off third base, but they botched the rundown as Walker retreated to the bag
Ahmed doubled to drive in two runs, then Moreno hit his three-run homer.
The Cardinals cut their deficit to 7-3 in the sixth inning, when O'Neill hit a single and scored on Carlson's double
The Diamondbacks answered in the seventh inning with singles by Rojas, Gurriel and Longoria to make it 8-3. Contreras' solo homer in the bottom of the inning cut that deficit to 8-4
St. Louis got within a run in the ninth inning. Nootbaar walked, Goldschmidt hit a double, Alec Burleson hit an RBI groundout and Contreras smacked a two-run homer.
--Field Level Media