PHOENIX -- Two home runs in a game were nothing new for Conor Jackson. That sacrifice bunt, though, was something else.
The homers drew the cheers, but Jackson's sacrifice bunt to set up the go-ahead runs in the five-run seventh might have been more impressive, at least to him.
"That was probably the biggest thing I've done all year, definitely a first in my career, but it was a situation where that was called for," he said.
When reminded that he had a sacrifice bunt last year, Jackson said that one was a bunt attempt for a hit that wound up as a sacrifice when he was thrown out. This one was a sacrifice all the way.
"We had our number-four hitter up there with two home runs and four RBI today and he's bunting," Arizona manager Bob Melvin said. "That's what this team's all about. The situation called for a bunt right there and he got it done."
Three Nationals players hit solo home runs in the sixth to tie it at 4, but Mark Reynolds and Miguel Montero each singled in a pair of runs in the five-run seventh for the Diamondbacks, who stayed two games up on San Diego in the NL West.
"That's what I love about this team is it's a different guy every night," Jackson said. "Tomorrow you'll be talking to a different guy."
Ten walks by Washington pitchers doomed the Nationals. With the game tied and one out, the Nationals walked Justin Upton intentionally to load the bases for Reynolds, who singled up the middle off Saul Rivera (4-4) to put Arizona on top for good.
Orlando Hudson and Eric Byrnes led off the seventh with walks, then Jackson advanced the runners with a sacrifice bunt to bring up Upton. After Reynolds singled, Stephen Drew walked to load the bases for Montero.
Like Arizona, Washington has had a strong bullpen in recent weeks. Not this night, though.
"I never think the game is mine but we feel very good when our bullpen is in. But as I said before, they're human," Washington manager Manny Acta said. "Usually you get in trouble when you walk the leadoff guy, not to mention the second guy."
Jackson hit a two-run home run in the first and another in the eighth.
Livan Hernandez (8-7) got the victory despite allowing home runs by Felipe Lopez, Ryan Zimmerman and Austin Kearns in the sixth.
Hernandez allowed four runs and six hits in seven innings, striking out one and walking one.
Arizona took a 4-1 lead against starter Matt Chico.
Jackson's two-run homer in the first gave Arizona a 2-0 lead. Jackson's line drive on a 1-2 pitch with two outs cleared the left field fence to put the D-Backs ahead in the opener of a three-game series.
The Nationals cut it to 2-1 in the third when Robert Fick doubled, took second on Chico's sacrifice bunt, then scored when Lopez grounded out.
Chico, though, lost control in the bottom of the inning. After Hernandez led off with a double to the right-center gap, the Washington left-hander struck out Chris Young and walked four of the next five batters. The last two walks, to Upton and Reynolds, came with the bases loaded, bringing in two runs to boost Arizona's lead to 4-1.
The Diamondbacks pulled off a slick double play in the fifth when the second baseman Hudson backhanded Fick's grounder and, in the same motion, flipped the ball from his glove to the shortstop Drew, who relayed it to first.
The teams have the two best records in the NL since the All-Star break, Arizona at 19-8 and Washington at 17-11. ... Nationals 1B Dmitri Young was out of the lineup for the second game in a row with a sore hamstring. ... The three home runs in an inning were the most for Washington since the franchisee moved from Montreal in 2005.