PHOENIX -- Justin Upton and Gerardo Parra hit consecutive RBI singles to support Trevor Cahill's seven strong innings, and the Arizona Diamondbacks beat the Los Angeles Dodgers 3-2 on Wednesday night.
The Dodgers, losers of six of their past seven, squandered a chance to pull even with St. Louis for the second NL wild-card spot. The Cardinals lost 3-2 to San Diego earlier Wednesday.
The defeat left Los Angeles a game behind St. Louis. The teams begin a four-game series Thursday at Dodger Stadium.
Arizona moved within four games of the Cardinals.
Pitching with a 2-1 lead, Dodgers starter Aaron Harang issued consecutive two-out walks in the sixth. Upton followed with a single to tie the game 2-all and end Harang's night.
Left-hander Randy Choate came on to face the left-handed hitting Parra, who lined a single to right that gave the Diamondbacks a 3-2 lead.
Cahill (11-11) scattered four hits, struck out seven and did not walk a batter for the second time this season. He also did not issue a free pass June 20 against Seattle.
David Hernandez pitched the ninth for his second save in two nights.
Harang (9-9) allowed four hits in 5 2-3 innings but walked four. The right-hander struck out two.
Los Angeles, which dropped seven games behind first-place San Francisco in the NL West, is batting .184 in its last five games with one homer and seven runs.
The Diamondbacks have won 10 of the past 12 meetings between the clubs. Arizona starters are 9-0 with a 1.75 ERA in their last 12 games against the Dodgers.
Shane Victorino hit a one-out single and Matt Kemp was hit by a pitch before Adrian Gonzalez lined a double to right-center that gave Los Angeles a 2-0 lead.
The Diamondbacks cut the lead in half in the second when Paul Goldschmidt singled, stole second, went to third on a wild pitch and scored on a sacrifice fly by Upton.
NOTES: Hernandez last recorded back-to-back saves on July 7-8, 2011. Arizona has won consecutive one-run games for the first time since opening the season with three straight one-run victories over the Giants. Diamondbacks closer J.J. Putz missed his second straight game with stiffness in his back. Harang is 3-8 with a 3.19 ERA in 17 career appearances and 16 starts against Arizona. Upton's sixth-inning single snapped an 0-for-7 streak. What better way to reduce some pennant-race tension than phantom infield practice? Before the game, the Dodgers pantomimed their way through their infield warm-up, with the fielders scooping imaginary grounders and catchers stumbling in foul territory under invisible, sky-high pop-ups. Dodgers RHP Josh Beckett (1-2) starts against St. Louis RHP Lance Lynn (14-7) on Thursday. The Diamondbacks have the day off before rookie LHP Tyler Skaggs (1-1) faces RHP Matt Cain (13-5) to begin a three-game series against San Francisco.