Phillies 5, Nationals 4
Philadelphia - Jayson Werth hit a tiebreaking solo homer in the eighth inning to lift Philadelphia past Washington, the Nationals' 11th straight loss.
Rockies 8, Dodgers 3
Los Angeles - Rookie Ian Stewart homered and drove in a career-high five runs and Colorado won its fourth straight.
Mets 7, Braves 3
New York - Carlos Delgado hit a go-ahead double off the left-center fence to end the Mets' long stretch of bases-loaded futility.
Marlins 6, Giants 0
San Francisco - Ricky Nolasco pitched a two-hitter for his first career shutout and drove in two runs with his first double. Jorge Cantu homered and doubled for the Marlins, who won their second in three games. Jeremy Hermida, Mike Jacobs and John Baker, who had three hits and reached base in all five plate appearances, also drove in runs.
Cubs 5, Reds 0
Chicago - Rich Harden allowed two hits in seven innings, struck out 10 and bunted in the go-ahead run for his first career RBI. The NL Central-leading Cubs improved to a season-high 29 games over .500 at 77-48. Chicago has won seven of eight and 17 of its last 21.
Diamondbacks 7, Padres 6
Phoenix - Adam Dunn hit his National League-leading 33rd home run in his Arizona home debut. Conor Jackson had two hits and two RBIs for the Diamondbacks.
Astros 5, Brewers 2
Milwaukee - Geoff Blum hit a tiebreaking three-run homer in the sixth inning to help Houston beat Ben Sheets and Milwaukee. Blum was hitless in nine at-bats before he hit a 1-2 pitch from Sheets (11-7) to right-center for his career-high 12th home run.
Pirates 4, Cardinals 1
St. Louis - Ian Snell threw seven scoreless inning to outpitch Braden Looper. Ryan Doumit had three of the Pirates' five hits, including an RBI double in the first that drove in the lone run before a three-run ninth.