SEATTLE (AP) — Chris Sale pitched seven innings of three-hit ball, 20-year-old Rafael Devers became the youngest Boston player to hit a home run since Tony Conigliaro in 1965 and the Red Sox beat the Seattle Mariners 4-0 on Wednesday to stop a four-game losing streak.

Sale (13-4) struck out 11, reaching double digits for the 14th time this season.

A day after his big league debut, Devers homered in the third off Andrew Moore (1-3) for his first major league hit. Sandy Leon hit a two-run homer off Moore in the fourth.

YANKEES 9, REDS 5

NEW YORK (AP) — Luis Severino (7-4) struck out nine over seven innings, allowing a pair of unearned runs and three hits as New York completed a two-game sweep.

Didi Gregorius hit his fourth homer in three games and Todd Frazier hit his first homer for the Yankees, who have won consecutive series after going 0-8-2 in series after sweeping Baltimore from June 9-11. The Yankees have won eight of 12 following a 7-19 slide.

Cincinnati has lost three straight and is 2-11 since the All-Star break. Homer Bailey (2-5) lost his third start in a row, giving up seven runs — five earned — and 10 hits in six-plus innings.

RAYS 5, ORIOLES 1

ST. PETERSBURG, Florida (AP) — Evan Longoria and Steven Souza Jr. homered, and Alex Cobb (9-6) gave up one run and four hits in seven innings.

Longoria's two-run homer off Ubaldo Jimenez (4-7) put Tampa Bay ahead 2-1 in the sixth, and Souza hit his 21st homer this season in the seventh against Darren O'Day.

DIAMONDBACKS 10, BRAVES 3

PHOENIX (AP) — J.D. Martinez homered twice and Ketel Marte hit an inside-the-park, two-run homer.

Martinez has homered three times in three days, his first home runs since he was acquired from Detroit.

Patrick Corbin (8-9) gave up two runs and seven hits in six innings. Aaron Blair (0-1) allowed five runs, five hits and five walks in three innings.

GIANTS 2, PIRATES 1

SAN FRANCISCO (AP) — Brandon Belt hit a tiebreaking double in the seventh against Tony Watson (5-3) on a routine fly that left fielder Starling Marte had trouble seeing because sun and wind.

Jeff Samardzija (5-11) allowed one run and four hits in seven innings, and Sam Dyson worked the ninth for his sixth save.

CUBS 8, WHITE SOX 3

CHICAGO (AP) — Jake Arrieta (10-7) gave up two runs and three hits in 6 2/3 innings and the World Series champions moved a season-high six games over .500 at 53-47. Chicago leads the NL Central by a half-game over Milwaukee after trailing the Brewers by 5 1/2 games just two weeks ago.

Anthony Rizzo had three hits and four RBIs, helping the Cubs improve to 10-2 since the All-Star break. Addison Russell hit a solo homer in the ninth.

Top prospect Yoan Moncada hit his first career homer and Alen Hanson also went deep, but the White Sox lost for the 11th time in 12 games. Third baseman Yolmer Sanchez committed a costly error and James Shields (2-3) lasted just four-plus innings.

The White Sox played without All-Star outfielder Avisail Garcia, who is expected to miss a couple weeks after an MRI revealed a strained ligament in his right thumb.

NATIONALS 8, BREWERS 5

WASHINGTON (AP) — Bryce Harper extended his hitting streak to a career-high 18 games, then was ejected for arguing with plate umpire Chris Segal after striking out in the eighth inning with runners at the corners.

Washington said it will put star right-hander Stephen Strasburg on the disabled list Thursday with a nerve impingement that is causing pain in his right forearm. The move will be retroactive to Monday, and Nationals manager Dusty Baker said Strasburg will miss one turn.

Ryan Zimmerman and Adam Lind had two-run doubles in a seven-run eighth inning.

Milwaukee's Domingo Santana hit a first-inning home run that landed on the concourse beyond the left-field stands, a drive that would have traveled 476 feet unimpeded, according to MLB's Statcast.

Ryan Madson (1-0) pitched a scoreless inning, and Jacob Barnes (3-2) wasted a 2-1 lead.

BLUE JAYS 3, ATHLETICS 2

TORONTO (AP) — Justin Smoak hit a tying two-run homer in the ninth off Santiago Casilla (2-5) and Kendrys Morales homered on the next pitch. Toronto has hit consecutive homers six times this year, the last three occasions involving Smoak and Morales.

Joe Biagini (3-8) pitched two-thirds of an inning.

PHILLIES 9, ASTROS 0

PHILADELPHIA (AP) — Aaron Nola (8-6) struck out a career-high 10 over six innings, allowing four hits. He is 5-1 with a 1.49 ERA over his last seven starts.

Cameron Rupp hit two home runs and had four RBIs. Maikel Franco homered and doubled and Tommy Joseph had two doubles for the Phillies, who had 14 hits while setting season highs with five doubles and nine extra-base hits.

Mike Fiers (7-5) allowed three runs and five hits in four innings.

ROYALS 16, TIGERS 2

DETROIT (AP) — Eric Hosmer matched his career high with five hits, including his first major league grand slam, and had six RBIs and four runs.

Hosmer entered with 117 homers but had not hit one with the bases loaded until he connected off Warwick Saupold in a nine-run seventh inning.

Bruce Rondon was ejected with one out in the ninth after hitting Mike Moustakas on the back with a pitch, which caused both benches to empty. Utilityman Andrew Romine entered in his third big league pitching appearance.

Ian Kennedy (4-6) improved to 3-0 in his last six starts, allowing one run and three hits in six innings. Anibal Sanchez (2-1) gave up four runs and nine hits in 3 2/3 innings.

INDIANS 10, ANGELS 4

CLEVELAND (AP) — Rookie Bradley Zimmer homered and drove in the go-ahead run with a seventh-inning double as Cleveland won its sixth in a row, matching a season high.

Zimmer hit a leadoff homer and broke a 2-all tie with a two-out double against Ricky Nolasco (4-12). Bryan Shaw (4-4) was the winner.

MARLINS 22, RANGERS 10

ARLINGTON, Texas (AP) — Dee Gordon homered on the first pitch thrown by Yu Darvish (6-9) and Miami set a franchise scoring record, topping a 20-1 win over Atlanta on July 1, 2003.

Christian Yelich hit a solo homer in the first for the Marlins, and Marcell Ozuna's three-run triple in the fourth made it 9-2 to chase Darvish (6-9). J.T. Realmuto and Giancarlo Stanton later went deep, with Stanton hitting a 468-foot drive for his major league-leading 33rd homer.

Adrian Beltre homered and had two doubles, giving the Rangers third baseman 2,996 hits. He was ejected in the eighth in a dispute with plate umpire Gerry Davis over where Beltre stood while on deck to hit.

Jose Urena (9-4) allowed five runs, four hits and four walks in five-plus innings.

CARDINALS 10, ROCKIES 5

ST. LOUIS (AP) — Paul DeJong hit his eighth home run in July, a two-run drive in the first off Jeff Hoffman (6-3).

Randal Grichuk had a career-high four hits and Harrison Bader had three hits in his second major league game.

Carlos Martinez (7-8) struck out eight and gave up five runs and seven hits in six innings for his first win since June 16.

St. Louis has won four of five while Colorado has lost four of six. The Rockies announced after the game that they have acquired right-hander Pat Neshek from Philadelphia for minor league pitchers J.D. Hammer, Alejandro Requena and infielder Jose Gomez.

PADRES 6, METS 3

SAN DIEGO (AP) — Luis Torrens had three RBIs, Manuel Margot homered and Jhoulys Chacin (10-7) gave up two runs and four hits in 5 1/3 innings.

Brad Hand got three outs for his fourth save, extending his scoreless string to 17 1/3 innings.

Steven Matz (2-4) gave up six runs and nine hits in three innings and is 0-3 in his last five starts.

DODGERS 6, TWINS 5

LOS ANGELES (AP) — Justin Turner hit a game-ending single with two outs in the ninth off All-Star closer Brandon Kintzler (2-2) as Los Angeles rallied from a 5-0 fourth-inning deficit to win their fifth straight and improve the major leagues' best record to 71-31.

Kenley Jansen (5-0) pitched a scoreless ninth.