Joe Musgrove pitched six strong innings and also doubled and scored a run, leading the San Diego Padres to a 5-2 win over the host Miami Marlins on Friday night.
Mark Melancon pitched a scoreless ninth for his third save in three days. He has 30 saves on the season, which leads the majors.
Padres shortstop Fernando Tatis Jr., who leads the National League with 29 homers, was given a rest and did not start. However, Tommy Pham picked up the slack and hit his 11th homer as San Diego won its third straight game.
Tatis was used as a pinch-hitter in the ninth and flew out to center.
Musgrove (6-7) allowed six hits, one walk and two runs for his first win since June 30. The Padres had lost each of his previous three starts.
Miami, which has lost seven of nine games to start the second half, was led by Adam Duvall, who hit a 421-foot solo home run. It was Duvall's team-high 22nd homer.
Marlins rookie Zach Thompson (2-3) took the loss, allowing three runs on six hits, with one walk and three strikeouts in five innings.
Before the game, the Marlins placed infielder Jon Berti on the injured list due to a concussion. He was hit in the back of the head by a pitch in Thursday's series opener.
San Diego opened the scoring with two runs in the first inning. Pham slugged his homer, and Jake Cronenworth followed with a triple to right. Manny Machado then made it 2-0 with his RBI groundout.
Musgrove doubled in the second and scored on Trent Grisham's two-out single to center.
Miami cut its deficit to 3-2 with Duvall's homer in the bottom of the second and Jesus Aguilar's two-out double to left in the third.
San Diego extended its lead to 5-2 in the eighth. Cronenworth was hit by a pitch, and Machado doubled to set up the rally. After Miami brought its infield in, Wil Meyers hit a grounder to first baseman Aguilar, whose throw home was on the right-field side and got past catcher Sandy Leon. Cronenworth and Machado both scored, and Leon was charged with a tough error.
--Field Level Media