Zack Greinke won his seventh straight decision by holding San Diego to three hits in seven innings, and Steven Souza Jr. had the big hit in the six-run third that carried the Diamondbacks to a 6-2 victory.
"Today was not an easy day," manager Torey Luvollo said. "I'm not going to lie. I know I didn't sleep good after last night's game. I think we turned the page effectively. We had the one big inning, which was enough. But once again, the right guy stepped on the mound and gave us a great effort and allowed us to do those things."
The only big mistake by Greinke (12-5) was allowing Manuel Margot's home run with one out in the second, his fourth. He allowed consecutive singles opening the fifth before retiring the side. He struck out six and walked none.
"There just was a good balance. Location was good, all the pitches were pretty good. Had some balls hit hard early on at guys to make it a little easier and some double plays, which was nice, also."
One of the double plays was started by shortstop Nick Ahmed to end the fifth.
Greinke hasn't lost since June 13 against Pittsburgh. He didn't factor into the decision on July 8, when the Diamondbacks lost 4-3 in 16 innings against the Padres.
"The last three games have been really good, and I'd like to keep doing that," he said. "It's been nice, personally."
San Diego's Luis Perdomo (1-6) continued to struggle. He allowed six runs on six hits and two walks in the third and got just one out before being lifted for Robbie Erlin. Besides Souza's two-run double, Jon Jay, A.J. Pollock, Ketel Marte and Ahmed also drove in runs. Erlin got Jeff Mathis to ground into a double play to end the inning.
Padres manager Andy Green said Perdomo's shoulder was bothering him.
"I thought the first two innings were pretty good," Green said. "The third inning was a lot of misses over the middle. Came out of the game, shoulder's bothering him on the mound. That's frustrating. You don't want to hear that. Hoping it's not a major deal for him. He's had that shoulder soreness a couple times over the last couple years, and it seems like it's revisiting him right now, and we're going to have to find out what our best play is with him. But that's a disappointing third inning and disappointing news after the game, too."
Perdomo allowed six runs and eight hits in 2 1/3 innings, struck out two and walked two.
He is 0-4 in five starts since being recalled from Triple-A El Paso.
The Padres are 2-5 since the All-Star break and overall have lost 10 of their last 12 games.
Diamondbacks: Placed 3B Jake Lamb on the 10-day disabled list with a bruised left shoulder. Switch-hitter Eduardo Escobar, obtained in a trade with Minnesota on Friday, will get significant time at third with Lamb out, manager Torey Lovullo said.
Diamondbacks: LHP Patrick Corbin (7-4, 3.13) is 1-1 with a 2.23 ERA and 41 strikeouts and no home runs allowed in his last six starts.
Padres: RHP Tyson Ross (6-8, 4.29) beat Philadelphia in his last start after losing his previous five decisions.
Hall of Famer Barry Larkin, who spent his entire 19-year playing career with the Reds, wants to help develop minor leaguers and isn't interested in being manager.
The game between the Baltimore Orioles and Boston Red Sox scheduled for Tuesday night has been postponed because of rain.
Astros reliever Roberto Osuna has agreed to a peace bond and must comply with a series of conditions for one year or face criminal charges.
The end of the final week of the season will be nostalgic and bittersweet for the New York Mets. The beginning will serve to remind the Mets of a past they'd thought was buried, and how far they have to go to catch a familiar foe.
The Houston Astros are on the verge of clinching first in the American League West.
Nine sports franchises from Major League Baseball, the NBA and the NFL are encouraging fans to register and vote.