NEW YORK -- Left-hander Madison Bumgarner threw a two-hit shutout Sunday afternoon, and Hunter Pence hit two homers and collected four RBIs as the San Francisco Giants routed the New York Mets 9-0 at Citi Field.

Catcher Buster Posey went 4-for-5 with a two-run homer and three RBIs for the Giants, who won for the third time in four games to ensure they would retain at least a share of the lead in the National League wild-card race.

The Mets have just eight hits in the first three games of the four-game series.

Bumgarner (13-8) issued his lone walk to the right fielder Curtis Granderson leading off the first and lost his no-hit bid when Mets second baseman Wilmer Flores doubled to deep left field leading off the third. However, the southpaw set down the next 13 before David Wright's broken bat single to shallow right in the seventh.

Bumgarner, who also scored two runs, recorded his second career shutout and fourth complete game. He struck out 10.

Orioles 1, Mariners 0

BALTIMORE -- Chris Tillman threw seven innings of four-hit ball, Nick Markakis homered, and Baltimore took the three-game series.

The Orioles also recorded a fourth consecutive series win for the first time this season. The Mariners concluded a six-game road trip in which they went 3-3.

Tillman (8-5) struck out six and snapped a six-game winless streak, picking up his first victory since June 27 against Tampa Bay. However, he did not give up more than three runs in a start over that slide.

Nationals 4, Phillies 0

WASHINGTON -- Stephen Strasburg threw seven shutout innings and Washington scored an unearned run in the third to take the lead against Cole Hamels en route to the victory.

Strasburg (8-9) allowed just three hits with 10 strikeouts with one walk to outduel Hamels (6-6), who gave up one unearned run and four hits with six strikeouts in seven innings. Tyler Clippard pitched the eighth for Washington and closer Rafael Soriano threw the ninth as the Nationals shut out the Phillies for the second game in a row.

The Nationals added three insurance runs in the eighth on RBI doubles by Anthony Rendon and Jayson Werth and a run-scoring wild pitch.

Tigers 4, Rockies 0

DETROIT -- Anibal Sanchez struck out a season high 12 batters over seven two-hit innings and Victor Martinez hit a three-run home run to help Detroit complete a sweep of the three-game series.

Sanchez (8-5) got one inning of relief help each from Joba Chamberlain and Joakim Soria in Detroit's sixth shutout of the season, a combined four-hitter.

The Tigers made one error behind Sanchez, and he did not walk a batter in his 117-pitch outing. It was the 10th time Detroit's career single-game strikeout record holder (17) fanned 10 or more hitters in his career.

Reds 7, Marlins 3

MIAMI -- Cincinnati pounded out 15 hits and stole three bases to beat Miami. It was the most runs the Reds scored since June 28, when they beat the San Francisco Giants 7-3.

The Reds, who entered this series having lost 10 of their previous 12 games, turned things around against the Marlins, winning three of four.

Cincinnati's Mike Leake (9-9) allowed a season-high four walks but gave up just three hits and one run in six innings.

Indians 4, Rangers 3 (12 innings)

CLEVELAND -- Michael Brantley led off the bottom of the 12th inning with a home run as Cleveland rallied to complete a three-game weekend sweep.

With the Indians trailing 3-1, right fielder David Murphy tied the game with a dramatic two-run homer in the bottom of the ninth.

Brantley, the first batter in the bottom of the 12th, belted a 3-2 pitch from right-hander Phil Klein (0-1) over the right field wall for his 16th home run.

Astros 6, Blue Jays 1

HOUSTON -- Scott Feldman tossed his first complete game of the season, and Houston rode a third consecutive strong start to a third consecutive victory capping the four-game series.

Feldman (5-8) wobbled his way through his first three innings, facing 14 batters and needing a pair of inning-ending double plays to limit the damage to one run despite allowing six hits and two walks. When he returned to the hill with a 2-1 lead in the fourth, Feldman hit a groove.

Chris Carter supplied Feldman a one-run lead with his two-run single in the third against Marcus Stroman (7-3).

Cardinals 3, Brewers 2

ST. LOUIS -- Dominated for six innings by Milwaukee starter Matt Garza, St. Louis feasted on the Brewers' relievers and made a winner of John Lackey in his first start with the club.

The Cardinals bunched five of their six hits into the bottom of the seventh inning, scoring all of their runs for the win, which brought them within a game of the Brewers in the National League Central.

Lackey, acquired Thursday morning from Boston, pitched seven innings. He allowed seven hits and two runs, walking none and fanning four.

Angels 7, Rays 5

ST. PETERSBURG, Fla. -- Los Angeles opened with a five-run first inning and needed every bit of it by the end, holding on to beat Tampa Bay.

Mike Trout went 3-for-4 with two RBIs for the Angels, who won two of three in the weekend series. Los Angeles' Josh Hamilton, Howie Kendrick and Efren Navarro added two hits apiece, and Jered Weaver (12-6) pitched six innings of two-run ball.

Tampa Bay's James Loney finished with three hits, two runs and two RBIs.

Royals 4, A's 2

OAKLAND, Calif. -- Right-hander James Shield flirted with perfection but settled for his first victory since July 7, leading Kansas City past Oakland.

Shields (10-6) had a perfect game through five innings and allowed just four hits and two runs over eight innings, both runs coming on solo home runs by Josh Reddick. He struck out two and walked none.

Omar Infante (3-for-5) hit a two-run double in the fifth inning, when Kansas City scored all four of its runs off Scott Kazmir (12-4).

Twins 16, White Sox 3

CHICAGO -- Minnesota exploded for 12 runs in the final two innings and finished with 23 hits in a blowout of Chicago.

For the series, the Twins piled up 49 hits and 32 runs, with 22 of the runs in nine innings against White Sox relievers.

Danny Santana led all hitters with four RBIs and a career-high five hits. Oswaldo Arcia went 3-for-6 and three RBIs, while Eric Fryer added three hits and two RBIs. Chris Parmelee, Arcia and Fryer hit back-to-back-to-back homers in the ninth inning.

Diamondbacks 3, Pirates 2 (10 innings)

PHOENIX -- Tuffy Gosewisch scored the winning run from third base when Pittsburgh was unable to complete an inning-ending double play.

With runners on first and third and one out, Andy Marte hit a ground ball to Pirates shortstop Jordy Mercer, who threw to second baseman Jayson Nix for the force at second.

Nix's relay throw to first base hit baserunner Nick Ahmed in the left arm as Ahmed slid into second base.

Cubs 7, Dodgers 3

LOS ANGELES -- Chris Coghlan and Luis Valbuena homered, and Chicago dumped Los Angeles. The Cubs, the last place team in the National League Central, took two of three from the NL West-leading Dodgers, who beat them in nine of the previous 10 meetings before the weekend series.

Chicago's Edwin Jackson gave up two runs on seven hits with six strikeouts and no walks -- he was averaging four per game -- in six innings. Jackson (6-11) worked six innings for the first time in five starts.

Dodgers starter Josh Beckett (6-6) allowed three runs in four-plus innings.

Padres 4, Braves 3 (10 innings)

SAN DIEGO -- Everth Cabrera singled home Alexi Amarista with two outs in the bottom of the 10th to give San Diego the victory over Atlanta.

The Padres earned their second consecutive walk-off win, giving them a sweep of the three-game series.

The Braves tied the game in the top of the ninth on a throwing error by Joaquin Benoit, who blew a save chance for the first time since taking over the closer role when Huston Street on July 18.

Yankees 8, Red Sox 7

BOSTON -- New York came from behind three times, eventually emerging with its second win in the three-game weekend series.

Brett Gardner broke a 7-7 tie with a solo homer leading off the sixth inning, Stephen Drew drove in four runs against his old team, and recently claimed reliever Esmil Rogers tossed three innings of no-hit relief to give the Yankees the victory.

Gardner hit his fifth homer of a six-game road trip in which the Yankees went 3-3. He went deep off left-hander Craig Breslow (2-3) for his 15th homer of the year. Gardner also hit a two-run single in the second inning.