Cubs 3, Giants 2
Chicago - Aramis Ramirez lined a go-ahead two-run double off the wall in left with two outs in the eighth inning, and the Cubs rallied over the slumping Giants. Rich Hill (6-6) won for the first time in more than a month.
Chicago sent San Francisco to its fifth consecutive defeat to start the second half on a day Barry Bonds was a late scratch from the lineup to rest his sore legs.
Brewers 4, Diamondbacks 3
Milwaukee - Corey Hart and Ryan Braun homered, and Dave Bush pitched six strong innings for the Brewers, who kept a 31â2 game lead in the NL Central.
Nationals 4, Astros 3
Washington - Dmitri Young hit a go-ahead, three-run homer, and Washington handed Houston its seventh straight road loss.
Rockies 10, Pirates 8
Pittsburgh - Matt Holliday drove in three runs for Colorado, which almost let an eight-run lead slip away.
Reds 10, Braves 3
Atlanta - Ken Griffey Jr. passed Frank Robinson for sixth place on the career home run list, and Cincinnati pitcher Bobby Livingston went 4-for-4 with an RBI for the Reds.
Cardinals 5, Marlins 3
Miami - Chris Duncan and Adam Kennedy homered for St. Louis.
Dodger 10, Phillies 3
Los Angeles - Jeff Kent and Matt Kemp hit three-run homers, and Los Angeles won its fifth straight.
Brad Penny (11-1) became the first Dodger to begin a season 11-1 since Doug Rau in 1977.
Padres 5, Mets 1
San Diego - David Wells was on his best behavior, pitching six strong innings, and Michael Barrett went 3-for-4 with three RBIs for San Diego. Mike Cameron added a solo home run.