Padres 5, Diamondbacks 4: Edinson Volquez tossed seven strong innings and Yonder Alonso had two hits and an RBI as visiting San Diego completed a three-game sweep and extended its winning streak to a season-high seven games.
Carlos Quentin, Yasmani Grandal, Mark Kotsay and Alexi Amarista also drove in a run apiece for the Padres, who have won seven straight at Chase Field after dropping 24 of their previous 30 in Arizona.
Volquez (9-9) allowed two runs and four hits with two walks and seven strikeouts. The right-hander, who has yielded two runs in each of his three starts against Arizona this season, is 1-1 in six career outings versus the Diamondbacks.
Brad Brach yielded two runs in the eighth and Tommy Layne failed to retire the only batter he faced before Luke Gregerson came on to record the final four outs for his fourth career save and first this season.
San Diego, which scored all five of its runs with two outs, took the lead in the top of the first inning as Grandal and Alonso delivered back-to-back RBI singles. But Arizona answered in the bottom half, with Miguel Montero and Chris Young hitting consecutive two-out, run-scoring singles to forge a tie.
Kotsay put the Padres ahead in the third with an RBI base hit. Quentin plated a run with a double an inning later and Amarista did the same in the seventh to make it 5-2.
Starting in place of Joe Saunders, who was traded to Baltimore earlier in the day, Trevor Cahill (9-11) surrendered four runs and eight hits in just 3 2/3 innings. Cahill, who walked three and struck out six, is winless in his last five outings.
Aaron Hill belted a two-run homer for the Diamondbacks, who fell to 2-5 on their 10-game homestand.
GAME NOTEBOOK: After beginning the season without a sweep at Chase Field, San Diego has accomplished the feat in each of its last two visits. ... In return for Saunders, the Diamondbacks received RHP Matt Lindstrom. The 32-year-old reliever was 1-0 with a 2.72 ERA in 34 appearances with the Orioles this year. ... RHP Casey Kelly is expected to be recalled by the Padres and make his major-league debut Monday against Atlanta. Kelly will be replacing the injured Jason Marquis in the rotation.