PHOENIX (AP) - Josh Collmenter scattered four hits over seven innings and Willie Bloomquist homered to start a three-run first and help Arizona beat Houston 6-3 on Wednesday night.
Paul Goldschmidt added a two-run single, Justin Upton went 3 for 4 with a double and a run scored, and Gerardo Parra had an RBI double for the Diamondbacks. Arizona won for the third time in four games and moved a half-game ahead of San Francisco in first place in the NL West.
Clint Barmes and Humberto Quintero had RBI singles and Carlos Lee added a run-scoring groundout for the Astros, who have lost five of six.
Collmenter (7-7) allowed two runs, walked one and struck out five. David Hernandez pitched the ninth inning for his 10th save.
Astros starter Henry Sosa (0-1) gave up four runs and six hits in his major-league debut. Sosa walked three, struck out four and hit a batter.
Phillies 9, Dodgers 8
LOS ANGELES (AP) - Ryan Howard and Hunter Pence homered as Philadelphia overcame an early six-run deficit and completed a three-game sweep.
The Phillies won for the 12th time in 13 games and completed a 9-1 road trip. They improved baseball's best record to 77-40.
Down 6-0 after three innings, the Phillies scored four runs in the sixth for a 9-7 lead. Howard's 25th homer was a tiebreaking, two-run shot with two outs.
Kyle Kendrick (7-5) pitched one inning for the win after replacing starter Vance Worley.
Ryan Madson, the sixth Phillies pitcher, got three outs for his 22nd save.
Three of the five runs Dodgers starter Chad Billingsley gave up in 4 1-3 innings were unearned.
Worley gave up six runs and seven hits in four innings.
Pirates 9, Giants 2
SAN FRANCISCO (AP) - Andrew McCutchen hit a two-run homer, Jeff Karstens bounced back from his worst start of the season and Pittsburgh won its first series in three weeks.
The Pirates took two of three from the reigning World Series champions on the heels of a 10-game losing streak.
Garrett Jones added an RBI single to back Karstens (9-6), who struck out a career-high nine, ended a four-start winless stretch. He gave up a season-high nine runs and nine hits in a 15-5 loss at San Diego last Friday.
Pablo Sandoval homered for the Giants, who dropped a half-game behind first-place Arizona in the NL West.
Jonathan Sanchez (4-7), who hasn't won since June 2, allowed five runs - four earned - and five hits in 4 1-3 innings.
Brewers 5, Cardinals 1
ST. LOUIS (AP) - Randy Wolf pitched eight innings and Milwaukee jumped on Jake Westbrook to give the NL Central leader its 13th win in 14 games.
Prince Fielder had a sacrifice fly in the first inning and an RBI double in the third to help the Brewers open a five-game lead on the second-place Cardinals.
Milwaukee clinched only its fifth road series win of the season and will try for a three-game sweep Thursday. The Brewers have taken four of five from St. Louis this month.
The Brewers are 41-15 at home and just 26-35 on the road, but are one win away from a perfect 6-0 trip.
Albert Pujols had a sacrifice fly in the first for the Cardinals, but is 0 for 8 in the series and 5 for 42 (.119) with only four RBIs against the Brewers this season. St. Louis entered with a four-game winning streak but has yet to lead in the series.
Wolf (9-8) retired 18 of his last 20 with no walks and one strikeout. He allowed one run and five hits.
Westbrook (9-6) lasted eight innings despite matching his season-high with five walks, three to the first 12 hitters.
Braves 6, Marlins 2
MIAMI (AP) - Dan Uggla extended his hitting streak to 31 games and Tim Hudson pitched into the eighth inning to lead Atlanta to a three-game sweep.
Uggla's two-run single in the first inning tied Rico Carty for the second-longest streak in franchise history. Tommy Holmes hit in 37 straight for the Boston Braves in 1945.
Uggla went 3 for 5, his ninth multihit game during the longest hitting streak in the majors this season.
Logan Morrison hit his 17th home run for the Marlins, who have lost seven straight.
Eric Hinske drove in two runs for the Braves, who have won six of seven.
Hudson (12-7) allowed two runs in 7 1-3 innings and struck out seven. Jonny Venters struck out Brett Hayes with the bases loaded in the ninth to record his fourth save.
Anibal Sanchez (6-6) stretched his winless streak to 11 games. He allowed five runs in 1 2-3 innings.
Reds 3, Rockies 2
CINCINNATI (AP) - Joey Votto hit the last of Cincinnati's three solo homers, spoiling Kevin Millwood's return to the majors.
Votto's leadoff homer in the sixth snapped a 2-all tie and put the Reds in position for their second win in the last seven games. Edgar Renteria and Jay Bruce also homered off the 36-year-old Millwood, who signed a contract before the game.
Mike Leake (10-7) gave up 11 hits in 7 1-3 innings, including Troy Tulowitzki's solo homer, but managed to become the Reds' first 10-game winner.
Millwood was doing fine until Renteria led off the fourth with a homer. Renteria has a .326 career batting average off Millwood with three homers. One out later, Bruce hit his second homer of the series for a 2-0 lead.
The 11 hits off Leake were a season high, but nine of them were singles and Cincinnati turned a season-high four double plays.
Padres 9, Mets 5
NEW YORK (AP) - Will Venable had four hits and San Diego's bullpen rebounded from consecutive flops to hold off New York.
An error by second baseman Logan Forsythe allowed the Mets to cut the deficit to four in the ninth inning. With the bases loaded, Forsythe made a leaping grab of Willie Harris' line drive for the final out.
Aaron Harang (11-3) won his second straight start despite giving up at least 10 hits in each outing. Cameron Maybin had two RBIs and the Padres built a cushion with a three-run ninth.
Venable tripled, singled and doubled twice for the Padres.
Josh Thole had four of New York's 15 hits. Ruben Tejada added three hits for the Mets, who stranded 13 runners.
Knuckleballer R.A. Dickey (5-11) lost his third straight start.
Cubs 4, Nationals 2
CHICAGO (AP) - Reed Johnson, Alfonso Soriano and Geovany Soto homered for Chicago, which has connected in eight straight games and hit 19 home runs over that stretch.
Johnson added three singles in his seventh career four-hit game. Soriano doubled and drove in two runs and Soto scored twice.
Rodrigo Lopez (3-3) allowed one earned run and five hits in 5 2-3 innings. Carlos Marmol struck out three in a scoreless ninth for his 25th save.
Ross Detwiler (1-2) gave up three runs and seven hits over five innings. He fell to 0-8 in 16 career road appearances, including 10 starts.
Jayson Werth hit a solo home run and singled for Washington.