WASHINGTON (AP) -- Aaron Nola outdueled Max Scherzer in a meeting of All-Star aces, Odubel Herrera hit a two-run homer in the seventh inning and the Philadelphia Phillies defeated the Washington Nationals 2-0 Thursday.
Nola (15-3) was masterful in his matchup with the three-time Cy Young Award winner, allowing five hits and one walk. He escaped his biggest jam with his final pitch, striking out Bryce Harper with runners on first and second to end the eighth.
Nola struck out nine and finished with a 2.13 ERA -- the exact same ERA as Scherzer.
Scherzer (16-6) was nearly as good in the first matchup of starters with at least 150 innings and a sub-2.25 ERA since St. Louis' John Tudor faced Mets ace Dwight Gooden on Sept. 11, 1985. Scherzer gave up two hits in seven innings and struck out 10, increasing his major league-leading total to 244.
Pat Neshek pitched a perfect ninth for his fourth save.
BRAVES 5, MARLINS 0
MIAMI (AP) -- Rookie Ronald Acuna Jr. hit his 21st home run and got hit by another Miami pitch, though tempers stayed in check this time and Atlanta went on to win.
It was the first meeting between the teams since the Aug. 15 game in which Miami starter Jose Urena earned a six-game suspension by plunking Acuna on his first and only pitch. This time, no hysterics broke out.
And in the end, it was more of the same for Sean Newcomb and the Braves when they face the Marlins. Newcomb (11-7) allowed two hits and struck out eight in six shutout innings, improving to 4-0 with a 0.75 ERA in four starts against Miami this season.
Charlie Culberson and Ender Inciarte also homered for Atlanta, which remained three games ahead of second-place Philadelphia in the NL East.
Marlins starter Elieser Hernandez (2-7) lasted three innings, giving up three hits -- two of them homers -- and three runs.
CUBS 7, REDS 1
CHICAGO (AP) -- Cole Hamels tossed a complete game to continue his dramatic turnaround with NL Central-leading Chicago, which got home runs from Anthony Rizzo and Javier Baez to beat Cincinnati.
Hamels (4-0) allowed eight hits, struck out seven and walked two in his 17th career complete game and the first by a Cubs pitcher this season. His ERA in five starts with Chicago is 0.72.
Rizzo went 2 for 2 with a walk and three RBIs.
Baez was 3 for 5, reached on an error and scored three runs. The homer, his 27th, was a mammoth 481-foot solo shot that cleared the bleachers just left of straightaway center.
The Reds jumped to a 1-0 lead in the first, but the Cubs quickly answered. After Baez reached on an error with one out, Rizzo hit the first pitch he saw from Anthony DeSclafani (6-4) into the bleachers in right. Baez's homer in the third made it 3-1.
ROCKIES 4, PADRES 3
DENVER (AP) -- Ian Desmond hit a two-run, two-out homer in the ninth inning, and Colorado beat San Diego.
Desmond lined an 88-mph splitter from reliever Kirby Yates (4-3) over the fence in left after Trevor Story singled earlier in the ninth and stole second. It was Desmond's second career walk-off homer. His other was May 2, 2012, against Arizona.
Matt Holliday was in Colorado's starting lineup for the first time in a decade after having his contract selected from Triple-A Albuquerque. He went 0 for 3.
The Rockies overcame a baserunning blunder early and a costly error late to take two of three games from the Padres and move within one game of first-place Arizona in the NL West.
Chris Rusin (1-2) worked a scoreless ninth to pick up the win.
RED SOX 7, INDIANS 0
BOSTON (AP) -- David Price pitched eight shutout innings for his fifth straight win, backed by three bases-loaded doubles in a six-run fifth inning, and Boston beat Cleveland to split their four-game series.
After losing the first two games, Boston won twice in 20 hours to open a 9 1/2-game lead over the idle New York Yankees in the AL East. The Red Sox, who have the best record in baseball at 90-39, have not lost four games in a row all season, and they are the only team in the majors that has not been swept.
Price (14-6) gave up three hits against the AL Central leaders and no walks, hitting a batter and striking out seven before leaving to a standing ovation after the top of the eighth.
Adam Plutko (4-4) matched him into the fifth, when Sandy Leon led off with a ground-rule double. Boston added three more doubles in the inning to make it 6-0.
TWINS 6, ATHLETICS 4
MINNEAPOLIS (AP) -- With a two-run double by pinch-hitter Mitch Garver, Minnesota overtook Oakland starter Trevor Cahill in the fourth inning on the way to victory.
The A's lost consecutive games for the second time in more than two months and dropped 1 1/2 games behind AL West-leading Houston.
Joe Mauer singled in the fourth to tie Rod Carew for second on the club's career hits list, driving in Minnesota's fifth run against Cahill (5-3). The right-hander took his first defeat since May 16, and the A's lost with him on the mound for the first time since June 2.
Khris Davis moved into the major league lead with his 39th home run, a no-doubt drive to start the second inning against Twins starter Kohl Stewart, who was removed with two outs in the fifth. Reliever Alan Busenitz (4-0) picked up the win.
Trevor Hildenberger shook off Jed Lowrie's two-out homer in the ninth to finish his fourth save in as many opportunities since closer Fernando Rodney was traded to the A's two weeks ago.
GIANTS 3, METS 1
NEW YORK (AP) -- San Francisco's Madison Bumgarner hit an RBI double for the only earned run off New York ace Jacob deGrom and topped him on the mound, too.
In his first appearance in New York since tossing a four-hit shutout in the 2016 NL wild-card game, Bumgarner (5-5) allowed one run on five hits in eight innings. He struck out eight and walked none.
Bumgarner extended his scoreless streak at Citi Field to 33 innings before Todd Frazier homered to begin the seventh. The big lefty is 7-0 with a 1.42 ERA in eight starts against the Mets.
DeGrom (8-8) went six innings and exited with a major league-best 1.71 ERA. He allowed two runs overall on four hits, striking out 10 with a season-high four walks.
Will Smith worked around a two-out walk to Jose Bautista in the ninth for his 11th save in 13 opportunities.
RAYS 4, ROYALS 3
ST. PETERSBURG, Fla. (AP) -- A throwing error on Kevin Kiermaier's bases-loaded grounder in the ninth inning helped Tampa Bay complete a four-game sweep of Kansas City.
Jake Bauers opened the ninth by drawing a walk from Brian Flynn (4-4) and went to third on C.J. Cron's single.
After Joey Wendle grounded out and Willy Adames was intentionally walked to load the bases, Kiermaier grounded a 3-2 pitch to first baseman Ryan O'Hearn, who made a wild toss to the plate.
Sergio Romo (3-3) worked a perfect ninth as Tampa Bay improved to a season-high six games over .500 (67-61) with its fifth consecutive victory.
Kansas City, which has lost 17 of 21, fell 52 games under .500 (38-90) and was eliminated from the playoff race.
TIGERS 7, WHITE SOX 2
DETROIT (AP) -- Matthew Boyd pitched six scoreless innings and Ronny Rodriguez hit his first career home run to lift Detroit over Chicago.
Rodriguez also hit an RBI double, and Nicholas Castellanos and Mikie Mahtook homered off James Shields (5-15). All three of Detroit's homers were solo shots in the sixth inning.
Boyd (8-11) allowed six hits, walked one and struck out six.
Jose Rondon hit a two-run homer in the eighth for the White Sox, who fell to 3-10 this season against Detroit.