Sale, out all season with a fracture in his right rib cage, allowed three hits with one walk and struck out five. The lefty reached 97 mph on his fastball during a 78-pitch, 53-strike outing.
Corey Kluber (5-5) allowed two runs and four hits in six innings to beat the Red Sox in consecutive starts.
The Rays went up 3-2 in the sixth when pinch-hitter Francisco Mejía had an RBI single off Matt Strahm (3-3). Two more runs scored when the Red Sox made two errors on the same play.
Brooks Raley worked the ninth for his fifth save in six chances.
ORIOLES 4, CUBS 2
CHICAGO (AP) — Ramón Urías hit a two-run homer and made a big defensive play, and Baltimore beat Chicago for its ninth straight win.
Jorge Mateo also homered as Baltimore (44-44) reached .500 for the first time this season. It’s the longest win streak for the Orioles since the franchise won 13 straight in September 1999.
Baltimore right-hander Jordan Lyles (6-7) pitched seven innings of two-run ball in his second straight win. Jorge López, the Orioles’ lone All-Star selection, worked the ninth for his 17th save in 21 chances.
All-Star Ian Happ homered for Chicago, which dropped its fifth in a row. Adrian Sampson (0-1) allowed three runs and six hits in 5 1/3 innings.
BRAVES 4, METS 1
ATLANTA (AP) — Matt Olson hit a go-ahead, two-run homer in the sixth inning, Adam Duvall went deep for two runs in the seventh and Atlanta trimmed New York’s NL East lead to 1 1/2 games.
The Braves dropped the series opener to the Mets but haven’t lost consecutive games since June 17-18. They are 30-9 since June 1, best in the major leagues over that span.
Atlanta had one hit against Mets starter David Peterson (5-2) before Olson crushed a slider 426 feet to center field, his 14th homer of the season.
Tyler Matzek (1-2) faced the minimum in 1 1/3 innings. A.J. Minter earned his fourth save with a perfect ninth.
REDS 4, YANKEES 3
NEW YORK (AP) — Jonathan India drove in two runs with a go-ahead, bases-loaded single with two outs in the ninth inning, and Cincinnati rallied past New York.
The Yankees were 49-0 when leading after eight innings and the Reds were 0-48 when trailing after eight before New York closer Clay Holmes (4-1) entered with a 3-0 lead but failed to retire any of the five hitters he faced. The Yankees have lost three straight for the second time this year.
Reiver Sanmartin (2-4) pitched a scoreless eighth. Alexis Diaz struck out Aaron Judge and got a double play from Gleyber Torres to finish his third career save.
Before pulling off their fifth straight win, the Reds did little against Gerrit Cole, who allowed four hits and struck out 11 in seven innings.
ASTROS 6, ANGELS 5
ANAHEIM, Calif. (AP) — Kyle Tucker delivered a tiebreaking RBI double in the ninth inning, and Houston blew a four-run lead before rallying for a victory over spiraling Los Angeles.
José Altuve led off the ninth with a walk from Angels closer Raisel Iglesias (2-6), who had his second straight calamitous outing. Aledmys Díaz singled before a double to right by Tucker, a first-time All-Star selection last week.
Díaz hit an early two-run homer and Alex Bregman and Altuve had RBI singles before the Astros wasted a strong six-inning start by Luis Garcia with a mistake-filled seventh. The AL West leaders have still won four of five and 21 of 27 to move a season-high 28 games above .500 at 57-29.
Hector Neris (2-3) pitched the eighth, and Ryan Pressly picked up his 19th save.
CARDINALS 7, DODGERS 6
ST. LOUIS (AP) — Albert Pujols and rookie Nolan Gorman homered as St. Louis ended Los Angeles’ seven-game winning streak.
Andrew Knizner drove in three runs on three singles as St. Louis won its third straight.
Trea Turner had a two-run homer and single, and scored three runs for the Dodgers. Freddie Freeman added a solo homer, two singles and an RBI double.
Juan Oviedo (2-1) worked 1 1/3 innings in relief. Giovanny Gallegos gave up a leadoff homer to Freeman, but hung on in the ninth inning for his 10th save.
Mitch White (1-2) allowed six runs on 10 hits in five innings.
ATHLETICS 14, RANGERS 7, 12 INNINGS
ARLINGTON, Texas (AP) — Chad Pinder hit a grand slam during an eight-run 12th inning and Oakland beat Texas.
Corey Seager homered for a career-high fifth straight game to get the Rangers within 4-3 in the ninth, and Kole Calhoun tied it with a single a few batters later.
Pinder was Texas’ automatic runner to open the 12th and scored on Vimael Machin’s sacrifice fly off Dennis Santana (3-4). Three more runs scored before Pinder came to bat with the bases loaded, and he hit the first pitch from Kolby Allard into the left-field seats to make it 14-6.
Kirby Snead (1-0) struck out two and stranded two after entering with one out in the 11th.
GIANTS 13, DIAMONDBACKS 0
SAN FRANCISCO (AP) — Thairo Estrada hit two homers, Logan Webb struck out eight in six scoreless innings and San Francisco routed Arizona.
Joey Bart and Yermín Mercedes also connected off Dallas Keuchel (2-7).
Webb (8-4) pitched around traffic in nearly every inning and had two walks in beating Arizona for the third time in four starts. Webb allowed five hits and ended his night on a comebacker by Carson Kelly to end the sixth with two on.
BLUE JAYS 4, PHILLIES 3
TORONTO (AP) — José Berríos matched his career high by striking out 13 over six innings, Lourdes Gurriel Jr. had four hits and Toronto snapped a four-game losing streak.
Berríos (7-4) allowed three runs and six hits, improving to 5-0 in eight home starts. Jordan Romano finished for his 19th save in 22 chances.
Gurriel singled in the second, doubled and scored in the third, doubled home the go-ahead run in the sixth and singled in the eighth.
Jeurys Familia (1-1) allowed one run and four hits in 1 1/3 innings as Philadelphia lost its third straight.
TIGERS 7, ROYALS 5
KANSAS CITY, Mo. (AP) — Miguel Cabrera drove in the tying and go-ahead runs, matching Ted Williams for 14th place on the career RBI list, and Detroit rallied past Kansas City to snap a four-game skid.
Cabrera’s sacrifice fly in the fifth inning made it 3-3, and he had an RBI grounder for the Tigers’ first run in a four-run seventh. He equaled Williams with 1,838 RBIs.
The Royals committed three errors in the seventh behind Jose Cuas (2-1), who allowed four runs, only one of them earned. Kansas City had four errors overall — two by shortstop Bobby Witt Jr. — as its three-game winning streak ended.
Beau Brieske (3-6) pitched six innings, allowing three runs on five hits and striking out four. Gregory Soto worked the ninth for his 18th save.
BREWERS 6, TWINS 3
MINNEAPOLIS (AP) — Andrew McCutchen and Willy Adames each hit a two-run homer, and Milwaukee outlasted three rain delays to beat Minnesota.
Jandel Gustave (2-0) worked a hitless fifth. Devin Williams pitched a perfect eighth inning to set up Josh Hader for his 27th save in a perfect ninth.
Jorge Polanco homered and Nick Gordon and Byron Buxton drove in runs for the Twins. Josh Winder (4-3) gave up five runs and four hits in five innings.
ROCKIES 5, PADRES 3
DENVER (AP) — Charlie Blackmon hit a tiebreaking three-run homer, Austin Gomber pitched six strong innings and Colorado beat San Diego.
Gomber (5-7) permitted one run and six hits. Daniel Bard pitched a 1-2-3 ninth for his 19th save in 21 chances.
Mike Clevinger (2-2) gave up Blackmon’s home run on his fourth pitch of the sixth inning. He allowed four of the five batters he faced in the inning to reach before being pulled.
GUARDIANS 4, WHITE SOX 1, GAME 1
CLEVELAND (AP) — Shane Bieber pitched a three-hitter for his first complete game this year and José Ramírez and Amed Rosario drove in two runs apiece, sending Cleveland past Chicago in a doubleheader opener.
Bieber (4-5) struck out seven and walked none. He had been 0-2 in six starts since winning at Baltimore on June 3, the longest winless streak of his big league career.
Rosario had a pair of RBI doubles off Davis Martin (1-3), driving in Austin Hedges in the third and Myles Straw in the fifth.
WHITE SOX 7, GUARDIANS 0, GAME 2
CLEVELAND (AP) — Dylan Cease struck out nine in 5 2/3 innings, and Chicago split a doubleheader with Cleveland.
José Abreu, Luis Robert and Josh Harrison homered for Chicago, which had dropped four of six.
Cease (8-4) allowed five hits and walked three. The right-hander has not allowed more than one earned run in nine consecutive starts, posting a 0.53 ERA over his last 51 innings.
Abreu hit a two-run homer in the first against Konnor Pilkington (1-2), who ultimately allowed four runs — three earned — in five innings.
PIRATES 3, MARLINS 2
MIAMI (AP) — Rookie Oneil Cruz hit a tiebreaking RBI triple and Jake Marisnick homered for the second straight game as Pittsburgh beat Miami.
Diego Castillo had two hits for the Pirates in their fourth straight victory. Dillon Peters (5-2) worked 2 2/3 innings of one-run relief. David Bednar pitched the ninth for his 16th save.
Cruz made it 2-1 when he tripled home Castillo in the fifth. Cruz then scored on Jason Delay’s single against Daniel Castano (1-3).