AMERICAN LEAGUE: Tigers 5, Twins 3

Niko Goodrum and Jose Iglesias homered as host Detroit broke a six-game losing streak with a win over Minnesota on Friday night.

Detroit only scored eight runs while being swept in a pair of three-game road series against the Oakland Athletics and Los Angeles Angels.

Jordan Zimmermann (5-4) gave up two unearned runs on eight hits in 6⅓ innings. He struck out one batter and didn’t issue a walk.

Shane Greene allowed an RBI double to Ehire Adrianza with two outs in the ninth before retiring Joe Mauer for his 24th save.

Rays 7, Blue Jays 0

Blake Snell pitched five perfect innings and then was pulled, Michael Perez hit his first career home run and Tampa Bay beat host Toronto.

Making his second start since spending time on the disabled list because of shoulder fatigue, Snell (13-5) threw 47 pitches. The All-Star lefty struck out six.

Reliever Jake Faria came on to begin the sixth and gave up an infield single to leadoff batter Luke Maile. Two outs later, Randal Grichuk hit a single to left but was thrown out trying to stretch his hit into a double.

Faria allowed one walk and three singles in three innings. Jamie Schultz pitched a hitless ninth for the Rays.

Mariners 5, Astros 2

Nelson Cruz hit a tiebreaking two-run double in a three-run eighth inning to lift Seattle to a victory over host Houston.

Mitch Haniger doubled with one out in the eighth, and Denard Span singled to chase starter Gerrit Cole (10-5). The double by Haniger was his fifth extra-base hit in the last two games after he doubled in the sixth on Friday and had two doubles and a homer on Thursday.

Cole was replaced by Ryan Pressly, whose first pitch plunked Jean Segura on the top of his left hand. Cruz then smashed a ball off the wall in left-center to score Haniger and Span and make it 4-2. The Mariners tacked on a run when Segura scored on a groundout by Kyle Seager.

Red Sox 19, Orioles 12

Xander Bogaerts and Andrew Benintendi each hit three-run homers, Brock Holt connected in a six-run sixth inning and Boston overpowered host Baltimore.

After hitting for the cycle one night earlier, Mookie Betts went 3 for 4 with two walks and three RBI. The 19 runs were the most for Boston since a 22-run outburst against Seattle in August 2015.

The Red Sox have won 11 of 13 to open a nine-game lead over the second-place Yankees in the AL East.

Boston starter Nathan Eovaldi gave up eight runs, four earned, and 10 hits in 2⅔ innings.

Rangers 12, Yankees 7

Ronald Guzman became the first rookie to hit three home runs in a game against the Yankees, powering Texas past host New York.

Eight days after Boston’s Steve Pearce connected three times off the Yankees, Guzman duplicated the feat in ending New York’s four-game winning streak.

Guzman grounded out his first time up, then hit solo home runs in three straight at-bats. The 23-year-old first baseman batted again in the eighth with a chance to tie the big league record for homers in a game — no rookie has ever hit four — but struck out swinging against Chad Green.

NATIONAL LEAGUE: Cubs 3, Nationals 2

Jason Heyward broke up a no-hitter with a tying two-run single in the sixth inning, Anthony Rizzo drew a bases-loaded walk in the seventh and host Chicago beat Washington.

In the first meeting between the teams since Chicago beat Washington in the NL Division Series, the Cubs won even though they didn’t get a hit against Nationals starter Jeremy Hellickson.

Rizzo walked three times. Manager Joe Maddon got ejected, but the Cubs pulled out the victory.

Reds 3, Diamondbacks 0

Anthony DeSclafani struck out a season-high nine to outduel Clay Buchholz and scored one of Cincinnati’s two runs on Billy Hamilton’s suicide-squeeze bunt to help the host Reds beat Arizona.

DeSclafani (6-3) allowed three hits and no walks while pitching into the eighth inning of his second straight shutdown outing. He limited Washington to one run on six hits with a walk and two strikeouts in seven innings of a 7-1 victory last Saturday.

Mets 6, Marlins 2

Zack Wheeler won his fifth straight start, pitching seven solid innings and sending New York over host Miami.

Wheeler (7-6) allowed four hits and two runs. He struck out eight and walked one.

Wheeler’s scoreless-inning streak ended at 23 when he gave up a two-run homer to Miguel Rojas with two outs in the seventh, making it 4-2.

Amed Rosario had three hits and drove in two runs, Kevin Plawecki knocked in two and Austin Jackson had three hits for the Mets, who have won three of four.

Braves 10, Brewers 1

Kevin Gausman pitched eight strong innings to win his SunTrust Park debut, Ender Inciarte drove in four runs and host Atlanta beat Milwaukee.

Nick Markakis added three RBI and Johan Camargo had two, helping the Braves win for the ninth time in 12 games. Atlanta began the night a game back in the NL East.

Milwaukee, which has dropped four of five to fall three games back in the NL Central, had a runner in scoring position in the first and second against Gausman (6-9). After the threat in the second, he retired the next 12 batters before Mike Moustakas doubled in the sixth and scored on a single.