The Marlins pounded out 20 hits, including four hits each by John Buck, and José Reyes.
Mark Buehrle gave the Marlins seven innings, allowing two runs and striking out four for his 11th victory of the season. Joe Saunders of the Diamondbacks gave up nine runs in 3 2/3 innings, that included 12 hits and two home runs
Other National League Scores
Atlanta 4 – Washington 5 – Danny Espinosa scored in the bottom of the 12th inning on an error by Atlanta Braves second baseman Dan Uggla and the Nationals beat the Atlanta Braves 5-4. Ian Desmond homered for Washington and Craig Heyward homered for the Atlanta Braves.
Cincinnati 5 – Philadelphia 12– Roy Halladay allowed five runs on 10 hits over seven innings of work. He struck out three. Mike Leake allowed seven runs on 10 hits as he worked into the fifth inning for Cincinnati. Juan Pierre went 3-for-4 with an RBI, three runs scored and two stolen bases for Philadelphia.
Chicago 3 – Milwaukee 9 – Justin Germano gave up seven runs and eight hits in 4 2/3 innings for Chicago. Jonathan Lucroy hit two home runs and the Brewers scored eight runs in the fifth inning to beat the Chicago Cubs 9-3 . Josh Vitters homered for the Cubs and David DeJesus had two RBI.
San Francisco 2 – Los Angeles 1 – Madison Bumgarner struck out 10/8 shutout innings for the San Francisco Giants in a classic pitchers duel with Clayton Kershaw, who struck out 10 in eight innings, but gave up two earned runs. Shane Victorino had two stolen bases for the Dodgers. Pablo Sandoval had two RBI for the Giants. Hanley Ramirez homered for the Dodgers in the ninth-inning