Cubs 6, Diamondbacks 2
Chicago - Aramis Ramirez homered and had four RBIs and Jacque Jones had two run-scoring singles for Chicago, which won for the 19th time in 24 games.
Jason Marquis (7-5) allowed four hits over 72â3 innings, including Chris Young's 15th homer, to get the victory and run Chicago's record to 7-1 since the All-Star break.
Astros 2, Pirates 1
Pittsburgh - Carlos Lee's two-run homer in the first inning helped Roy Oswalt bounce back from the worst start of his career, and Houston beat Pittsburgh 2-1 on Friday night.
Kansas University product Tom Gorzelanny (9-5) took the loss despite surrendering just two runs in seven innings.
Marlins 10, Reds 2
Miami - Florida's Scott Olsen won in his first start after a two-game suspension for the Marlins, who ended Cincinnati's four-game winning streak.
Rockies 3, Nationals 1
Washington - Aaron Cook had a career-high eight strikeouts in seven shutout innings for Colorado and the Rockies won for the 10th time in 14 games.
Cardinals 4, Braves 2
Atlanta - Juan Encarnacion drove in the go-ahead run in the eighth and added a sacrifice fly in the ninth.
Giants 8, Brewers 4
Milwaukee - With commissioner Bud Selig in attendance, Barry Bonds went 0-for-4 and remained two home runs behind Hank Aaron as San Francisco beat Milwaukee 8-4 on Friday night.
Bonds started the series opener in the city where Aaron began and ended his career - and on the 31st anniversary of Aaron's final home run. He hit No. 755 on July 20, 1976, at now-demolished County Stadium.
Mets 4, Dodgers 1
Los Angeles - Jose Reyes scored the tiebreaking run in the eighth inning on a throwing error by reliever Roberto Hernandez, and Carlos Beltran followed with a two-run homer in the New York Mets' 4-1 victory over the Los Angeles Dodgers on Friday night.
Phillies 7, Padres 3
San Diego - Adam Eaton put in a full night's work in his return to San Diego, pitching the Philadelphia Phillies to a 7-3 win over the San Diego Padres on Friday night.