ST. LOUIS _ Tyler O'Neill, who had four runs batted in for his first 66 at-bats with the Cardinals this season, knocked in four runs in his first two at-bats Saturday night. Dakota Hudson, who scored his eighth victory, and three relievers held the early lead for a 4-2 Cardinals win over the Arizona Diamondbacks at Busch Stadium before a hefty paid crowd of 46,152.
O'Neill doubled in two runs in the first and hit a two-run homer in the third as the Cardinals took a 4-1 lead.
Back in the Cardinals' lineup after missing Friday's game, O'Neill capitalized on a two-out error by Arizona third baseman Jake Lamb by sending a soft liner to left with two men on base, chasing them both home on a double in the first inning.
Arizona starter Merrill Kelly, who had spent the past four seasons in the Korean League, walked Jose Martinez with one out and Paul DeJong grounded into a forceout. Lamb backed up on Paul Goldschmidt's bouncer and muffed the hop as he tried to make a play.
O'Neill then served one 71 mph off the bat but just on the foul line to drive in DeJong and Goldschmidt, who scored standing up from first for the first two runs of the game.
Kelly's rough inning continued when he walked Dexter Fowler and Matt Wieters but he struck out Kolten Wong to leave the bases loaded.
The Diamondbacks rallied for a run in the second but Hudson, with Michael Wacha warming up in the bullpen, pitched out of subsequent, bases-loaded, no-out spot to keep the score at 2-1.
Adam Jones was hit by a pitch and Lamb walked before Nick Ahmed singled to center. Not only did Jones score but the D-backs made the Cardinals look bad as Lamb went to third and Ahmed to second when Fowler threw to third.
Carson Kelly walked to load the bases and then Merrill Kelly bounced to third baseman Matt Carpenter, who fired home for a forceout and out No. 1.
The key out was Hudson striking out Jarrod Dyson and then Ketel Marte flied to deep right.
After Goldschmidt was robbed of at least an extra-base hit when left fielder Dyson went to the top of the left-center-field wall in the third, O'Neill knocked in his third and fourth runs on the night with a two-run homer to right.
His second homer of the season scored DeJong, who had reached first safely when Merrill Kelly fumbled his roller along the first-base line.
Eduardo Escobar's solo homer in the fifth, his 19th, cut the Cardinals' lead to 4-2.
Carlos Martinez worked the final 1 1/3 innings, gaining his fourth save in five tries, striking out three. The Cardinals ended a losing streak at three games at they climbed back to .500 at 45-45.