Houston Astros' Derek Fisher, right, celebrates with Jose Altuve (27) after hitting a home run off Oakland Athletics' Daniel Mengden in the seventh inning of a baseball game Wednesday, May 9, 2018, in Oakland, Calif. (AP Photo/Ben Margot)
Houston Astros' Derek Fisher, right, celebrates with Jose Altuve (27) after hitting a home run off Oakland Athletics' Daniel Mengden in the seventh inning of a baseball game Wednesday, May 9, 2018, in Oakland, Calif. (AP Photo/Ben Margot)

Oakland, Calif. — Gerrit Cole struck out nine to raise his major league-leading total to 86, and the Houston Astros beat the Oakland Athletics, 4-1, on Wednesday to complete a three-game sweep.

Max Stassi and Derek Fisher hit consecutive home runs with two outs in the seventh off Daniel Mengden (2-4) for a 2-1 lead. Yuli Gurriel added a two-run double against Yusmiero Petit that extended his hitting streak to 11 games.

Cole (4-1) allowed one run, four hits and three walks in six innings. His 1.43 ERA is second in the major leagues behind the 1.17 of teammate Justin Verlander.

Ken Giles pitched a perfect ninth for his fifth save and second in two days. Before Tuesday, he had not pitched since allowing four runs in the ninth inning of a May 1 loss to the New York Yankees.

Oakland right-hander Trevor Cahill was put on the 10-day disabled list because on an impingement in his pitching elbow, a move retroactive to Sunday.

The 30-year-old started the season in the minors, was called up April 17 and went 1-1 with a 2.25 ERA in four starts. He struck out a career-best 12 in six innings against Baltimore on Saturday.

Reds 2, Mets 1 (10)

Cincinnati — New York wasted a first-inning rally by batting out of turn, and Adam Duvall led off the 10th with a homer to win it for Cincinnati.

Duvall connected for his first career game-ending homer, a drive off A.J. Ramos (1-2).

New York got off to a rough start in the first, when Wilmer Flores fanned for the second out and Asdrubal Cabrera doubled, following the announced batting order. But the lineup card the Mets turned into the umpires had those two switched in the order and plate umpire Gabe Morales called an out.

Indians 6, Brewers 2

Milwaukee — Carlos Carrasco struck out 14 in a complete game and Tyler Naquin and Francisco Lindor homered for Cleveland.

Carrasco (5-1) gave up five hits, walked one and threw 117 pitches in his second complete game this season.

He also hit an RBI single.

Naquin hit a three-run drive off Junior Guerra (2-3). Milwaukee closer Corey Knebel, who had been out since April 5 with a hamstring injury, was activated from the disabled list and gave up Lindor’s leadoff home run in the seventh.

Cubs 13, Marlins 4

Chicago — Kris Bryant hit his 100th career homer, Anthony Rizzo and Addison Russell connected in an eight-run third inning, and Chicago routed Miami.

Rizzo also had a pair of doubles and finished with five RBIs as the Cubs outscored the Marlins 31-9 in a three-game sweep after dropping a season-high five in a row.

Jose Quintana (4-2) returned the favor after getting hit hard in a loss at Miami on April 1. Wei-Yin Chen (1-2) was tagged.

Angels 8, Rockies 0

Denver — Rene Rivera homered with a sore right hand, Jaime Barria threw efficiently into the sixth inning and Los Angeles ended Colorado’s six-game winning streak.

Barria (3-1) allowed five hits and struck out seven over 5⅓ innings.

Zack Cozart and Justin Upton both homered in the third. Rivera added a solo shot in the seventh despite taking a pair of early foul tips off his right hand.

Rangers 5, Tigers 4 (10)

Arlington, Texas — Nomar Mazara led off the 10th inning with his second homer of the game, giving Texas its first winning home series this season.

Mazara pulled a 1-0 pitch into the right field seats off Warwick Saupold (1-1), the sixth Detroit pitcher.

It was his first career game-ending homer. He has 10 home runs this season, seven in May.

Pirates 6, White Sox 5

Chicago — Colin Moran hit a two-run homer that capped a four-run rally against Nate Jones in the ninth inning, and Pittsburgh sent Chicago to its fifth straight loss.

Starling Marte and Josh Bell singled off Jones (2-1), Elias Diaz had a two-run double and Moran homered.

Richard Rodriguez (1-1) got the win and Felipe Vazquez pitched a perfect ninth for his seventh save in seven chances.

Orioles 5, Royals 3

Baltimore — Mark Trumbo delivered a tiebreaking two-run single in the eighth inning, Chris Davis homered and Baltimore beat Kansas City to end a seven-game losing streak.

Jonathan Schoop had two hits and scored twice for the Orioles, who lost 18 of their previous 21 games.

Lucas Duda homered and drove in three runs for the Royals.

Braves 5, Rays 2

St. Petersburg, Fla. — Nick Markakis hit a three-run homer and Atlanta set a franchise record for consecutive shutout innings on the road.

Wilson Ramos’ two-run single with two outs in the eighth ended a string of 34 straight shutout innings for the Braves, who won for the seventh straight time on the road. That is the longest streak for the Braves in the modern era (after 1900), according to the Elias Sports Bureau, surpassing the 30 consecutive innings by Atlanta’s staff in July 1992.

Blue Jays 5, Mariners 2

Toronto — Yangervis Solarte hit a game-tying double in the eighth inning and Justin Smoak followed with a go-ahead double as Toronto rallied to beat Seattle.

Toronto started the eighth with five straight hits off Mariners reliever Juan Nicasio (1-1), turning a 2-1 deficit into a 4-2 lead.

Phillies 11, Giants 3

Philadelphia — Carlos Santana had three hits and five RBIs, Nick Pivetta struck out seven in five scoreless innings and Philadelphia beat San Francisco.

The Phillies, who are 20-11 since a 1-4 start, will try to sweep the four-game series this afternoon.

Pivetta (2-2) bounced back from an awful start against the Nationals in which he lasted only one inning and allowed six runs. He scattered four hits and didn’t walk anyone.