Washington, DC – Trevor Cahill pitched into the eighth inning and Justin Upton drove in two runs to lead the Diamondbacks over Washington, 5-1, in the opener of a three-game series.
Cahill (2-2) gave up six hits and a run while fanning five over 7 1/3 innings.
"He kept the ball down today, a lot of action on his ball, a lot of late life," Diamondbacks manager Kirk Gibson said. "He stayed in control of the game."
Bryan Shaw and David Hernandez finished out Arizona's third straight victory.
Paul Goldschmidt had three hits and scored once, while John McDonald and Miguel Montero both had two hits and an RBI.
The Nationals continued to struggle offensively. They lost 2-0 on the road to the Dodgers on Sunday and have scored just seven runs over their last five games, all losses.
"That's just not going to cut it," Nationals manager Davey Johnson said. "You go through spells, but you've got to have a lot of confidence in the talent and keep looking for us to break out. Tomorrow's another day."
Jordan Zimmermann (1-2) allowed eight hits and four runs -- three earned -- over 6 1/3 innings.
Tuesday also marked the DC debut for Nationals outfielder Bryce Harper. The first overall draft pick in 2010, Harper received a standing ovation prior to his first home at-bat, in which he struck out in the second inning. He finished 0-for-3.
The Nationals wasted an opportunity with a man in scoring position in the second, which ended when Wilson Ramos struck out, the third consecutive punchout for Cahill.
The Diamondbacks didn't take advantage of a first-and-third chance in the second inning but went ahead in the fifth. Goldschmidt legged out an infield hit and went to second on a throwing error by shortstop Ian Desmond. One out later, McDonald singled sharply to left field for a 1-0 lead.
Upton singled in the sixth, stole second and scored on Montero's double to center.
The Nats put men on first and second with nobody out in the sixth, but Rick Ankiel grounded into a double play to essentially kill the rally.
Arizona added two runs in the seventh for a 4-0 cushion. After loading the bases with one out, Zimmermann was replaced by Ryan Mattheus, but Aaron Hill was hit by a pitch in the back to force in a run with one out. Upton then hit a fly ball to Harper in left. The throw to the plate was perfect, but McDonald was ruled safe on a close play at home. Replays showed Ramos tagging the right knee of McDonald before he reached the plate.
Cahill grounded into a double play to stop a bases-loaded chance in the eighth, and the Nationals finally cracked the scoreboard in the bottom half. Pinch-hitter Roger Bernadina doubled to right with one out and scored on Desmond's ground single up the middle.
Shaw was summoned from the bullpen and retired Steve Lombardozzi on a ground ball and then struck out Ankiel to end the inning.
Upton's hit off the wall in center field scored Gerardo Parra in the ninth.
Arizona has won four in a row against the Nationals, all in Washington...Hill has reached base safely in 18 straight games...Washington went 1-for-7 with men in scoring position.