Jesus Guzman drove in the go-ahead run with a seventh-inning sacrifice fly and the Padres held on to defeat the Phillies, 2-1, on Saturday.
Will Venable hit an RBI double earlier in the game and Edinson Volquez (2-2) gave up just one run on six hits in as many innings to earn the win. Dale Thayer stranded a runner at third base in the ninth to record his third save of the season.
Roy Halladay (3-3) allowed two runs on seven hits over seven innings. He struck out 10, issued just one walk and is now winless in his last five starts -- the longest such stretch of his Phillies career.
Freddy Galvis had an RBI double for Philadelphia, which won the opener of this three-game series on Friday after being swept by the Mets earlier in the week.
"When you eeke out a win against (Halladay) in their park it says something about how we played and how we pitched," said Padres manager Bud Black. "Volquez matched him inning for inning."
Cameron Maybin started the seventh inning with a double and moved to third on John Baker's single. Halladay struck out Jason Bartlett but the pinch-hitting Guzman followed with a shallow fly to right field. Hunter Pence made the catch in foul territory and fired home, but Maybin narrowly beat the throw for the 2-1 lead.
Luke Gregerson replaced Volquez in the bottom half and allowed a leadoff single to Juan Pierre, then overthrew first base on Jimmy Rollins' sacrifice bunt. The error left runners at second and third, and a one-out intentional walk loaded the bases, but the Phillies failed to score.
Pence popped out to second before Ty Wigginton hit a grounder to Bartlett at short, whose throw to second barely beat a sliding Shane Victorino for the third out.
Rollins led off the ninth with a base hit and moved to second base on a sac bunt, but Thayer struck out Victorino and Pence to end the game.
Both teams used a pair of doubles to get on the board.
The Phillies stuck first, taking a 1-0 lead in the second inning when John Mayberry doubled to left and scored on Galvis' two-bagger.
In the third, Bartlett led off with a double to left and tied the game, 1-1, when Venable reached second with a line drive to right.
Philadelphia loaded the bases with two outs in the fifth, but Wigginton flew out to end the threat.
"My job is to keep the game close and give us a chance," said Halladay in regards to his winless stretch. "You don't have a lot of control over wins and losses. Your control is over making pitches."
Padres first baseman Yonder Alonso went 1-for-3 and has now hit safely in each of his last nine games...Phillies third baseman Placido Polanco went 1-for-4 and now needs just one hit to reach 2,000 for his career. He will become the 17th active player to reach the mark.