DENVER — Cole Hamels struck out nine in seven scoreless innings, singled twice and drove in two runs to lead the Chicago Cubs past the Colorado Rockies 10-1 in a testy game on Wednesday.
Rockies All-Star third-baseman Nolan Arenado left in the fifth inning with a left forearm contusion after Hamels (6-2) hit him with a pitch in the third, and three more batters — including Hamels — were hit by pitches later in the game.
Chicago’s Kris Bryant was hit by pitches three times in the first two games of the series.
Javier Báez and Kyle Schwarber homered for Chicago, which snapped a five-game road losing streak. Colorado’s 10-game home winning streak ended.
Chicago scored five times in the second off Antonio Sentenzela (5-5).
BREWERS 6, ASTROS 3, 14 INNINGS
HOUSTON — Justin Verlander set a career high with 15 strikeouts, but Mike Moustakas hit a two-run homer during Milwaukee’s three-run 14th inning and the Brewers rallied to beat Houston.
Christian Yelich started the 14th with a single against rookie Cionel Perez (1-1) for Milwaukee’s first hit since the ninth. After Ryan Braun lined out, Moustakas hit his 21st homer.
Jesús Aguilar added a pinch-hit RBI single as Milwaukee won for the fifth time in six games despite striking out a season-high 24 times. Braun, Yasmani Grandal and Eric Thames also went deep for the Brewers, and Adrian Houser (2-1) pitched two scoreless innings for the win.
Verlander allowed three runs in seven innings. The 2011 AL Cy Young Award winner led the way as Houston set a franchise record for strikeouts, surpassing its previous record of 23 during a 15-inning game in 2003 against the Cubs.
BRAVES 8, PIRATES 7, 11 INNINGS
ATLANTA — Austin Riley tied the game with a solo homer in the ninth inning and scored the winning run on Ozzie Albies’ double in the 11th, leading Atlanta past Pittsburgh for its sixth straight victory.
The Braves (39-29) took over sole possession of first place in the NL East and moved 10 games over .500 for the first time this season.
Josh Bell hit a tiebreaking solo homer off Atlanta closer Luke Jackson in the top of the ninth. Riley, who had a two-run triple in the first, took Kyle Crick deep to make it 7-all in the bottom half.
After Riley was hit by pitch in the 11th, Albies drove a gapper into right-center and Riley scored from first base, sliding headfirst across the plate to end it.
Jacob Webb (4-0) pitched two innings to earn the win.
Michael Feliz (2-3) took the loss.
Rain delayed the game for 55 minutes in the seventh.
MARLINS 9, CARDINALS 0
MIAMI — Jordan Yamamoto pitched seven innings to win his major league debut, Garrett Cooper hit a grand slam and Miami blanked St. Louis to end a six-game skid.
Yamamoto, acquired last year in the Christian Yelich trade, allowed three hits and two walks and threw 95 pitches. The rookie also earned an RBI with a squeeze bunt.
Two relievers completed a three-hitter.
Cooper finished a double shy of the cycle, and pulled a two-out inside fastball that was off the plate for a grand slam in the second inning against Miles Mikolas (4-7).
DIAMONDBACKS 2, PHILLIES 0
PHILADELPHIA — Merrill Kelly tossed three-hit ball over 7 2/3 innings, and Arizona beat Philadelphia.
Kelly (7-6) struck out five before departing when Bryce Harper entered the game as a pinch-hitter. Andrew Chafin retired Harper on two pitches and Greg Holland finished the three-hitter, earning his 10th save in 11 tries.
The Diamondbacks won another series in Philadelphia and have won 11 of their last 13 road games against the Phillies.
Philadelphia’s Zach Eflin (6-6) allowed two runs and five hits in eight innings, tying a career high with nine strikeouts.
RED SOX 4, RANGERS 3
BOSTON — Mookie Betts drew a bases-loaded walk in the ninth inning, giving Boston the win over Texas.
Andrew Benintendi hit a triple and two doubles, driving in two runs for the Red Sox as they ended a three-game skid and avoided falling below .500 for the first time in more than a month.
Boston rallied against reliever Jesse Chavez (2-1) in the ninth after allowing the Rangers to tie it in the eighth on an unearned run.
Matt Barnes (3-1) pitched a scoreless ninth.
ATHLETICS 6, RAYS 2
ST. PETERSBURG, Fla. — Ramon Laureano hit his first career grand slam to break an eighth-inning tie and finished with five RBIs as Oakland beat Tampa Bay.
Oakland went 6-4, including taking two of three from the Rays, on a season-long 10-game trip that included some significant travel issues.
Matt Olson started the decisive eighth with a single off Adam Kolarek (2-2). Laureano made it 6-2 by sending a 2-2 pitch from Colin Poche into the left-field stands.
Liam Hendriks (3-0) allowed the Rays to tie it in the seventh by allowing two inherited runners to score, but got the win.
REDS 7, INDIANS 2
CLEVELAND — Rookie Nick Senzel and Joey Votto hit back-to-back home runs to open the game and Cincinnati later got deep shots from Eugenio Suárez and Curt Casali, powering the Reds past Cleveland.
The quick homers by Senzel and Votto off rookie Zach Plesac (1-2) marked the first time an opposing team hit consecutive homers to start a game in Cleveland in 118 years.
The Reds earned a split of the two-game series between Ohio’s teams and snapped an eight-game losing streak in interleague play.
Anthony DeSclafani (3-3) made the early support stand, allowing one run and four hits in 5 2/3 innings.
Senzel and second baseman José Peraza had a frightening collision in short center field in the first. Both avoided serious injury and stayed in the game.
BLUE JAYS 8, ORIOLES 6
BALTIMORE — Rowdy Tellez hit a grand slam to cap a six-run fifth inning, Vladimir Guerrero Jr. had three hits and Toronto beat Baltimore to end a five-game losing streak.
Lourdes Gurriel Jr. had two RBIs for the Blue Jays, who matched their run total from the previous five games combined.
Pitching in his 400th career game, Edwin Jackson (1-4) allowed two runs in five innings of relief for Toronto.
Baltimore starter David Hess (1-9) gave up four runs and five hits in four-plus innings.
MARINERS 9, TWINS 6, 10 INNINGS
MINNEAPOLIS — Dee Gordon scored for Seattle on one of Minnesota’s three errors in the 10th inning.
Gordon opened the 10th with a ground-rule double off Tyler Duffey (1-1). Shed Long walked before the runners advanced on Dylan Moore’s sacrifice.
Mallex Smith followed with a grounder to first baseman C.J. Cron, who tried to get the speedy Gordon at the plate. Twins catcher Mitch Garver was given the error when he was unable to handle the throw.
One out later, Long and Smith scored when third baseman Miguel Sanó flubbed Edwin Encarnacion’s grounder. The AL Central-leading Twins finished with five errors in the game.
The Mariners carried a 6-4 lead into the ninth, but Byron Buxton tied it with a two-run homer off Anthony Bass (1-1).
Roenis Elías worked a perfect 10th for his sixth save.
Long hit a three-run drive in the eighth for his first career homer.
TIGERS 3, ROYALS 2
KANSAS CITY, Mo. — Brandon Dixon broke an eighth-inning tie with a sacrifice fly that lifted Detroit over Kansas City.
Miguel Cabrera also had a sacrifice fly for the Tigers, and Ronny Rodriguez hit an RBI double.
Jorge Soler drove in both Royals runs but flied out with a runner on to end the game.
The teams now head to Omaha, Nebraska, to play the first Major League Baseball game in that state Thursday night. It’s a prelude to the College World Series, which begins Saturday in the same ballpark — also home of Kansas City’s Triple-A affiliate.
Nick Ramirez (3-0) pitched two scoreless innings and Shane Greene earned his 20th save in 21 chances.
Jake Diekman (0-3) took the loss.
GIANTS 4, PADRES 2
SAN FRANCISCO — Evan Longoria drove in the go-ahead run with an infield single in the fifth inning after San Diego made two errors, and San Francisco held on to complete a two-game sweep.
Kevin Pillar homered for the first time in more than a month and Donovan Solano had two hits and two RBIs for the Giants. Buster Posey went 1 for 4 after coming off the injured list earlier in the day.
The Padres loaded the bases with two outs in the ninth against Will Smith before the closer got Manuel Margot to pop out. Smith has 16 consecutive saves to start the season.
Shaun Anderson (2-1) pitched four-hit ball over six innings and had a season-high six strikeouts.
Eric Hosmer had an RBI double for the Padres, who committed three errors overall that led to three runs. Joey Lucchesi (5-4) allowed three runs, two earned, in six innings.