"That was a good win," Giles said. "Obviously you don't want to leave home after a six-game homestand with a losing record."
San Diego, which went 3-3 at home, goes to New York and Houston for a six-game trip beginning Tuesday. The Padres maintained a two-game lead over Arizona and the Los Angeles Dodgers in the NL West.
"I almost caught it," Church said. "I didn't think the ball would be traveling that far. He's the kind of guy you need to get out. He's a table-setter. It's important to get him."
Giles, who hit a two-run homer off Livan Hernandez in the seventh, then singled up the middle off Bowie, who entered in the eighth.
"I wanted him to face the two left-handers," Nationals manager Frank Robinson said, referring to Roberts and Giles. "That's what happens basically when you only have one left-hander in your bullpen. That's just the nature of the beast with this ballclub."
Washington's Alfonso Soriano hit his 35th homer, his 31st career homer leading off a game.
Hernandez, who took a five-hit shutout into the seventh, gave up two runs and seven hits in seven innings, striking out seven and walking one.
Soriano's 35th homer of the season put the Nationals ahead.
Washington left the bases loaded in the fourth when Hernandez grounded out, and Roberts left the bases full in the bottom half when he struck out on a 59 mph curveball.
Hernandez held the lead until the seventh, when Roberts singled with two outs and Giles hit his eighth homer.
"He's a terrific pitcher," Giles said. "He can throw that curve 73-74 mph or he can throw it like he did to Roberts. He varies his speed with it 10-to-15 miles an hour. It's a tough pitch to hit, and it's a pitch that I took for a strike in the previous at-bat."
Washington tied the score in the eighth after Marlon Anderson walked and Brian Schneider singled. With runners at the corners and Soriano at the plate, Schneider stole second and Anderson came home when shortstop Geoff Blum misplayed Josh Bard's throw, which wound up in center field.
Scott Linebrink retired Soriano on a flyout and struck out Felipe Lopez.
Trevor Hoffman pitched a 1-2-3 ninth ahead of Brocail's perfect 10th. Hoffman was the beneficiary of a call when third-base umpire Brian Runge ruled Ryan Zimmerman's drive down the left-field line foul. TV replays showed the ball hitting the yellow padding on the left-field foul pole.
- Soriano tied Chuck Knoblauch for eighth on the leadoff homers list.
- Padres hitting coach Merv Rettenmund was ejected by plate umpire Paul Emmel for arguing balls and strikes during the bottom of the fifth.
- Roberts stole his 33rd and 34th bases of the season and has eight steals in his last 10 games.
- Padres reliever Alan Embree, who got an out in the sixth, has not allowed an earned run in 13 appearances and nine innings since July 17.