NEW YORK (AP) - Dan Uggla extended his career-best hitting streak to 26 games with a two-run single in the eighth inning, Tim Hudson pitched seven stellar innings and the Atlanta Braves beat the New York Mets 4-1 on Friday night.
Rookie Freddie Freeman doubled twice to run his hitting streak to 19 games, a personal best. Hudson (11-7) allowed three hits in helping the Braves hand the Mets their fifth straight loss.
Jose Constanza had an RBI triple and Michael Bourn a sacrifice fly for Atlanta off R.A. Dickey (5-10). Constanza made two acrobatic catches on drives by Jose Reyes in left field and Jason Heyward made a diving grab on Daniel Murphy's drive in right.
The Mets fell nine games behind the wild card-leading Braves.
Cubs 4, Reds 3
CHICAGO (AP) - Tony Campana drove in two runs with an inside-the-park homer and Chicago won its sixth straight.
It was the first major league homer for Campana, who also singled and doubled. He became the first Cub to hit an inside-the-park shot at Wrigley Field for his first homer.
Ryan Dempster (9-8) matched his season-high with six walks, but held the Reds to two runs and four hits in six innings. Carlos Marmol got three outs for his 24th save.
Ramon Hernandez homered for Cincinnati, which has lost three of four. Brandon Phillips and rookie Yonder Alonso both had two hits.
Reds starter Mike Leake (9-7) allowed three runs and six hits in six innings. He had an RBI single.
Cardinals 3, Marlins 2
MIAMI (AP) - Lance Berkman's second double of the game brought home Albert Pujols with the go-ahead run in the eighth inning to lead St. Louis.
Pujols doubled off Florida starter Anibal Sanchez (6-5) to lead off the inning, and Berkman drove Sanchez's final pitch of the game into center field to put St. Louis on top.
Matt Holliday hit his 18th home run for St. Louis. Mitchell Boggs (1-3) threw a scoreless seventh for the win, and Lance Lynn struck out Mike Stanton with the bases loaded to end the game and seal his first major-league save.
Stanton had three hits, including a triple, and stole a base for the Marlins.
Padres 15, Pirates 5
PITTSBURGH (AP) - Chase Headley's grand slam highlighted San Diego's first four-homer game of the season, and the Padres handed the Pirates their eighth straight loss.
Headley's shot to right-center capped a six-run fourth inning and was the Padres' first grand slam of the season. Kyle Blanks, Aaron Cunningham and Jesus Guzman also homered for the Padres, who have won seven consecutive and 12 of their last 14 at PNC Park.
Will Venable had three hits, two runs and two RBIs, Cameron Maybin added three hits and scored two runs and Luis Martinez had three RBIs for San Diego.
Aaron Haring (10-3) won despite allowing 13 hits in five innings.
Pittsburgh's Jeff Karstens (8-6) gave up nine earned runs in 3 1-3 innings.
Brewers 8, Astros 1
HOUSTON (AP) - Yovani Gallardo allowed four hits over eight innings as Milwaukee got its ninth victory in 10 games.
It was Gallardo's seventh straight decision over Houston and boosted his career record to 10-2 against the Astros.
Houston got three hits and one run off Gallardo (13-7) in the second inning. After that, he didn't allow another hit until J.B. Shuck singled in the fifth in his first major league at-bat.
Corey Hart hit his 16th homer in the sixth inning off Aneury Rodriguez. It stretched Milwaukee's lead to 7-1.
The Brewers got a quick 3-0 lead off J.A. Happ (4-14) in the first inning on an RBI double by Ryan Braun, who had three hits, and a two-run single by Casey McGehee.
Nationals 5, Rockies 3
DENVER (AP) - Michael Morse homered and Ian Desmond had four hits, including a liner that hit Rockies starter Juan Nicasio in the head, to lead Washington.
Nicasio was struck in the second inning. The ball slammed into the right side of Nicasio's head with a smack and caromed away, rolling over the first-base line.
Nicasio (4-4) was taken to the hospital where he was undergoing tests, the Rockies announced.
Rick Ankiel had three hits and Ryan Zimmerman and Danny Espinosa had two hits each for Washington. Drew Storen got the last four outs for his 28th save.
Nationals starter Jordan Zimmermann (7-9) allowed just two hits through the first five innings.