SAN DIEGO -- Arizona's pitching problems go away when Brandon Webb is on the mound.
Webb pitched neatly into the ninth inning and Johnny Estrada hit a two-run double to lead the Diamondbacks past the San Diego Padres 4-1 Monday night.
Webb (3-0) also drove in Arizona's final run with the third infield single in the ninth off Chan Ho Park. The sinkerballer allowed six hits, struck out four and walked none.
With its bullpen throwing a whopping 18 2/3 innings the previous four games, Arizona needed a big performance from Webb.
"That's as good a sinker as he's had this year," manager Bob Melvin said. "It was a quick game, a lot of early count groundballs."
Webb was chased after pinch-hitter Mark Bellhorn and Dave Roberts opened the ninth with consecutive singles, but Jose Valverde recorded three outs for his fourth save. Valverde struck out Josh Barfield and Brian Giles before Mike Piazza flied out with runners at second and third to end it.
As well as he pitched, Webb thought he could have done better.
"I was up with it a little bit," Webb said. "I made pretty good pitches when I had to. I didn't feel 100 percent, like I was dominating the game or anything, but I felt good.
"I wanted to finish it up. Getting the two runners on, it was a good time to let Jose get his work in," he said.
Mike Cameron doubled twice for his first hits with the Padres and scored San Diego's only run. He was activated Sunday after starting the season on the disabled list with a strained muscle in his side.
Webb "kept his pitch count down by throwing first-pitch strikes and hitting his spots," Cameron said. "He didn't let us get into our game."
The Diamondbacks also played good defense. Holding a 2-1 lead with one out in the sixth and Roberts on first, the Diamondbacks called a pitchout and threw out the speedster trying to steal second. Second baseman Orlando Hudson also made some nice plays.
"You know you're on your toes with Webby," Melvin said. "You know you're going to get plenty of groundballs. He works quick, and the defense usually makes good plays behind him because of it."
The Padres, coming off a split of a four-game series with the NL East-leading New York Mets, dropped back into fifth place in the West, flip-flopping with the Diamondbacks. San Diego won the division last year at 82-80.
"We ran into a well-pitched game," Padres manager Bruce Bochy said. "Webb was on. He was tough."
Park (1-1) came within one out of the Padres' first complete game of the year. He was chased by Webb's RBI single.
Park retired the first 12 Arizona batters before running into trouble in the fifth. Luis Gonzalez hit a leadoff double, Shawn Green drew a one-out walk and both scored on Estrada's double to left-center.
San Diego scored in the fifth. Cameron doubled with one out, stole third and scored on Vinny Castilla's sacrifice fly.
Chad Tracy hit a sacrifice fly in the eighth for the Diamondbacks, scoring Jeff DaVanon.
Park allowed four runs and nine hits with four strikeouts and one walk. It was his longest outing since throwing a complete game for the Los Angeles Dodgers on Aug. 24, 2001, at Atlanta.
After opening the season with 17 straight stolen bases, the Padres were the last NL team to have a runner caught stealing. ... Diamondbacks RHP Russ Ortiz, who had a poor performance in a 6-4 loss to the Dodgers on Sunday, has been moved to the bullpen. The Diamondbacks will evaluate his situation later in the week. Ortiz is 0-3 with a 6.91 ERA. ... Padres RHP Chris Young will be put on medication due to decreased blood flow to an artery in his pitching thumb. Young jammed his thumb while taking batting practice earlier in the season. He's scheduled to throw on the side Tuesday and his next scheduled start is Friday. If the medication doesn't work, he could be put on the disabled list.