Cardinals 6, Marlins 4
St. Louis - Albert Pujols homered for a career-best fifth consecutive game to give St. Louis an early lead, and Jim Edmonds' two-run, seventh-inning shot put the Cardinals ahead for good in a victory over sagging Florida on Wednesday night. Yadier Molina also homered for the Cardinals, all three of the long balls coming off Scott Olsen (9-11), to send the Marlins to their season-worst eighth straight loss.
Reds 4, Braves 2
Cincinnati - Josh Hamilton and Jeff Keppinger hit consecutive home runs, and Bronson Arroyo drove in a run. Arroyo (7-13) gave up six hits and two runs with three walks.
Dodgers 15, Phillies 3
Philadelphia - Andre Ethier and James Loney each drove in three runs, Matt Kemp had a career-high four hits, and Derek Lowe pitched seven solid innings.
Diamondbacks 3, Brewers 2
Phoenix - Brandon Webb's shutout streak ended at 42 innings, but he won.
Padres 7, Mets 5
New York - Jake Peavy slowed down the New York Mets - if not Jose Reyes - by striking out 11. Hours after major-league earned-run average leader Chris Young returned to San Diego because of a bad back, Peavy (14-5) delivered the big performance the NL wild-card leaders needed.
Astros 3, Nationals 2
Houston - Woody Williams won his third straight decision, and Ty Wigginton hit a solo home run.
Cubs 4, Giants 2, 10 inn.
San Francisco - Cliff Floyd found himself in the middle of another winning rally, as Chicago scored twice in the 10th inning to hang onto first place in the NL Central.
Pirates 11, Rockies 2
Denver - Nate McLouth hit a pair of home runs, two of a season-high six hit by the Pirates, and Pittsburgh had 17 hits.