Padres 6, Diamondbacks 2: Alexi Amarista went 3-for-5 with a home run and three RBIs and Clayton Richard came within one out of his third career complete game as San Diego continued its road trip by taking the opener of the three-game series.
Cameron Maybin and Yasmani Grandal also went deep for the Padres, who improved to 5-3 on their 10-game trek. Grandal's first three major league hits were homers.
Amarista opened the scoring with a solo homer in the first inning and added a two-run double in the sixth to give San Diego a 4-0 lead. The 23-year-old, who has hit four homers in his last five games after going without a blast in his first 55 major league contests, was a triple shy of becoming the first player in franchise history to hit for the cycle.
Maybin belted a solo shot in the sixth and Grandal added one in the seventh in his fourth major league game.
Richard (6-8) improved to 4-0 in six career starts against Arizona, allowing two runs and eight hits in 8 2/3 innings. The left-hander, who walked one and struck out three, has won four of his last five decisions.
Joe Thatcher struck out pinch hitter Jason Kubel to notch his first save in 213 career appearances.
Diamondbacks starter Trevor Cahill (6-7) surrendered four runs - two earned - and seven hits over six frames.
Chris Young belted a solo homer for Arizona, which had its four-game home winning streak snapped.
GAME NOTEBOOK: San Diego has won four of its last five games. ... Arizona had won 10 of its previous 11 at home. ... The Diamondbacks placed John McDonald on the 15-day disabled list with a strained left oblique and activated fellow infielder Geoff Blum from the 60-day DL. Blum went 1-for-11 in eight games with Arizona before being put on the shelf April 18 with the same injury as McDonald. ... Kubel, who leads the team in home runs (12) and RBIs (51), was kept out of the starting lineup after fouling a ball off himself over the weekend.