SAN FRANCISCO (AP) - Matt Cain pitched into the ninth inning on the way to winning his fifth straight start and the San Francisco Giants beat the Chicago Cubs 2-1 on Saturday.
Aubrey Huff drew a bases-loaded walk to tie the game at 1 in the sixth, then San Francisco went ahead on an RBI fielder's choice by Joaquin Arias on which Huff broke up a would-be double play. Huff produced his first RBI since April 16 and just his fifth this season after he spent a stint on the disabled list with anxiety disorder and is no longer a regular.
David DeJesus homered but it wasn't enough to help the Cubs avoid their ninth straight road loss. It is Chicago's longest skid away from Wrigley Field since also dropping nine in a row from Aug. 25 to Sept. 10, 2006.
Matt Garza (2-4) struck out six and walked one in six innings, allowing two runs on five hits but lost his third straight start.
METS 5, CARDINALS 0
NEW YORK (AP) - R.A. Dickey followed up Johan Santana's no-hitter by shutting out St. Louis, David Wright homered and the Mets beat the Cardinals.
Dickey (8-1) gave up seven hits, struck out nine and walked none in his third career shutout - first this season. The Mets scored three runs in the second, on a mishandled grounder and two run-scoring groundouts to win for the sixth time in eight games.
Carlos Beltran had a clean double against Dickey in the second inning - a day after he hit a shot down the line that looked fair but was ruled foul against Santana. The Cardinals have lost four straight and seven of nine.
MARLINS 5, PHILLIES 4
PHILADELPHIA (AP) - Hanley Ramirez hit two homers and drove in three runs to help the Marlins beat the Phillies.
Ricky Nolasco (6-3) allowed four runs on eight hits in seven-plus innings to improve to 6-1 in seven career starts at Philadelphia for the Marlins. Miami has won four of its last five and denied Cole Hamels (8-2) his ninth victory.
Jose Reyes had an RBI double to extend his hitting streak to 13 games.
Hunter Pence homered for the second straight game for the Phillies, who lost for just the third time in 10 games.
NATIONALS 2, BRAVES 0
WASHINGTON (AP) - Stephen Strasburg pitched four-hit ball for seven sharp innings and Jesus Flores homered, leading the Nationals over the Braves.
Strasburg (6-1) completed seven shutout innings for the first time in his major league career. He opened the game with a flourish, striking out the first four Braves batters.
Strasburg struck out nine, walked none and threw 90 pitches. Twice he gave up singles and then induced double-play grounders.
Sean Burnett allowed two singles in a scoreless eighth and Tyler Clippard pitched a perfect ninth for his fourth save in fifth chances.
Brandon Beachy (5-4) allowed just three hits in 6 1-3 innings.
DODGERS 6, ROCKIES 2
DENVER (AP) - Aaron Harang pitched six strong innings, Bobby Abreu homered for the first time this year and the Dodgers ended a season-worst five-game losing streak with a win over the Rockies.
Andre Ethier and Elian Herrera had two hits and two RBIs each and James Loney also had two hits for the Dodgers.
Michael Cuddyer and Wilin Rosario had RBI doubles and DJ LeMahieu had two hits for the Rockies, who had their five-game win streak snapped.
A day after the Rockies roughed up Los Angeles pitchers for 13 runs on 15 hits, Harang (4-3) held Colorado's suddenly potent offense to one run on four hits.
Juan Nicasio (2-3) took the loss and left the game in the second inning after straining his left knee.
DIAMONDBACKS 4, PADRES 2
SAN DIEGO (AP) - Daniel Hudson pitched eight strong innings and Paul Goldschmidt homered, leading the Diamondbacks to a win over the Padres.
The Diamondbacks, who have scored two runs or less in three of their last four games, got an assist from San Diego reliever Joe Thatcher (0-1), who balked in the go-ahead run in the seventh inning.
Hudson (2-1), making his second start since coming off the disabled list, allowed two runs on five hits while striking out five and walking one. Hudson also had a sacrifice fly.
Goldschmidt extended his career-best hitting streak to 11 games with a solo homer in the fifth inning into the second deck in left field that tied the score 2-all.
J.J. Putz got three outs for his 12th save.
BREWERS 5, PIRATES 1
MILWAUKEE (AP) - Brooks Conrad ended his 0-for-27 slump to start the season, hitting a homer and driving in three runs to lead the Brewers past the Pirates.
Shawn Marcum (4-3) pitched seven strong innings for Milwaukee, giving up five hits while striking out eight without a walk.
Pirates starter Erik Bedard (3-6) lasted just 3 2-3 innings. He allowed five hits, five runs and three walks in his shortest outing of the season other than a May 9 game against Washington that he left in the second because of back spasms.
Cody Ransom had a two-run single for Milwaukee and Rickie Weeks - hitting just .158 coming in - reached base all four times with two hits and two walks.
REDS 12, ASTROS 9
HOUSTON (AP) - Drew Stubbs homered and drove in four runs, Brandon Phillips added three RBIs and the Reds outlasted Houston to hand the Astros their eighth straight defeat.
Joey Votto went 4 for 4 with a home run and a walk. Todd Frazier and Ryan Ludwick also connected for the Reds, who set a season high for runs. Brandon Phillips doubled in the go-ahead run in the sixth inning and added two RBIs in the eighth.
The Reds were up 8-2 after hitting three homers off starter Wandy Rodriguez in the first two innings. Houston closed the gap with a three-run third and went on top by adding four in the fourth.
Ludwick's solo homer tied it in the fifth.
Sam LeCure (1-1) worked two scoreless innings for the win and Aroldis Chapman got his fifth save.
Fernando Rodriguez (1-6) allowed two hits and a run in the sixth for the loss.