WASHINGTON (AP) — Brandon Crawford went 4 for 4 with a two-run homer, and the San Francisco Giants dealt Max Scherzer his first loss in more than two months, defeating the Washington Nationals 2-0 on Sunday.

After Pablo Sandoval walked leading off the fourth, Crawford homered into the second deck in right for his eighth of the season. He singled in the first and doubled in the sixth and eighth innings. Since May 1, Crawford is hitting an MLB-best .439 (58-for-132) and has raised his average to .338.

Scherzer (10-2) had won nine straight decisions since his last loss on April 4. He allowed two runs and four hits while striking out nine over seven innings.

Derek Holland (4-6), a 10-year veteran facing Washington for the first time, allowed three hits and two walks in five innings as five pitchers combined for the three-hitter. Hunter Strickland pitched the ninth for his 13th save.

PADRES 3, MARLINS 1

MIAMI (AP) — Clayton Richard became the latest pitcher to flirt with the first no-hitter in San Diego Padres' history, losing his bid with two outs in the seventh inning against the Miami Marlins.

The Padres are the only team in the majors that has never thrown a no-hitter. They have played 7,881 games since starting out in 1969. Last month, Jordan Lyles was perfect for 7 1/3 innings until Colorado's Trevor Story singled. In April, Tyson Ross didn't give up a hit until Arizona's Christian Walker doubled on a ball misplayed by center fielder Franchy Cordero.

Richard (5-6) took a shutout into the seventh, but Miguel Rojas grounded a clean single up the middle to spoil Richard's try and JT Riddle followed with an RBI single. Richard gave up two hits in seven innings, striking out five and walking three. Brad Hand pitched a perfect ninth for his 19th save. Eric Hosmer hit a two-run homer as the last-place Padres won a fourth consecutive series for the first time since August 2015.

Jose Urena (1-8) allowed three runs and six hits in six innings.

METS 2, YANKEES 0

NEW YORK (AP) — Seth Lugo (2-1) pitched six dominant innings in a stellar spot start, Todd Frazier hit a two-run homer off Luis Severino (9-2), and the New York Mets snapped an eight-game skid.

Frazier went deep for the second consecutive night to help the Mets prevent a Subway Series sweep at Citi Field. They ended a 10-game home losing streak and avoided an 0-9 homestand that would have matched the worst in team history.

Despite losing another important player to injury when second baseman Asdrubal Cabrera exited with a tight left hamstring, the Mets broke a six-game slide against their New York rivals.

Anthony Swarzak finished the three-hitter, pitching a hitless ninth for his third career save and first with the Mets.

INDIANS 9, TIGERS 2

DETROIT (AP) — Corey Kluber continued his dominance of the American League Central, allowing two runs in eight innings as the Cleveland Indians topped the Tigers.

Kluber (10-2) is 5-0 with a 0.76 ERA in five starts against division rivals this season and has won his last 11 decisions against teams from the AL Central. He allowed five hits and struck out eight without walking a batter.

Melky Cabrera and Erik Gonzalez each drove in three runs for Cleveland, which expanded its divisional lead to five games over the Tigers.

Artie Lewicki (0-2) took the loss, allowing three runs on six hits and a walk in five innings. He struck out four in his third major-league start. Leonys Martin drove in two runs for Detroit, which lost a home series for the first time since April 13. The Tigers were playing their 18th game in 17 days.

MARINERS 5, RAYS 4

ST. PETERSBURG, Fla. (AP) — Right fielder Mitch Haniger threw out Johnny Field at the plate to end the game, and the Seattle Mariners held off the Tampa Bay Rays for their 17th win in 22 games. Field tried to score from first on a two-out, bloop single by Carlos Gomez.

James Paxton struck out 10 and Kyle Seager hit a go-ahead home run for Seattle. Nelson Cruz and Mike Zunino also homered for the Mariners, who took three of four from Tampa Bay.

Paxton (6-1) gave up three runs and five hits in seven innings. Edwin Diaz got defensive help from Haniger to post his 23rd save.

Seager gave Seattle a 5-3 lead on his seventh-inning drive off Jose Alvarado (0-3). Tampa Bay, which stopped an eight-game skid Saturday, got a homer from C.J. Cron.

ASTROS 8, RANGERS 7

ARLINGTON, Texas (AP) — George Springer scored the tiebreaking run in the ninth inning on a balk after homering on the first pitch, and the Houston Astros swept their Texas rivals in a four-game series for the first time, beating the Rangers despite blowing a six-run lead.

Texas closer Keone Kela had already thrown a pitch to Evan Gattis with two outs when Astros manager A.J. Hinch came out of the dugout apparently to question whether Kela had balked. After a brief conversation among the four umpires, Springer was awarded home. Replay showed Kela (3-3) not pausing in his delivery, and Rangers manager Jeff Banister was ejected while arguing the decision.

The World Series champion Astros won their fifth straight and moved a season-high 17 games over .500 (42-25) despite Dallas Keuchel failing to hold a 6-0 lead. He matched a career worst by allowing 13 hits while throwing 106 pitches in just 4 1/3 innings.

Yuli Gurriel's fourth hit was a tiebreaking homer in the seventh, but the Rangers got even again when Nomar Mazara doubled and Adrian Beltre singled him home with two outs in the eighth against Will Harris (2-3).

DODGERS 7, BRAVES 2

LOS ANGELES (AP) — Max Muncy homered in his third straight game, Logan Forsythe and Enrique Hernandez also connected, and the Dodgers beat the Atlanta Braves.

Muncy has 12 home runs, matching the total he hit last year while spending the whole season at Triple-A Oklahoma City. He hit a solo drive in the fifth inning to extend the Dodgers' lead to 4-2, and drew a bases-loaded walk in the sixth. The Dodgers took the series from Atlanta and have won seven of their last nine games. The NL champions moved to 33-32 — they have not been more than one game over .500 this season.

Ross Stripling (5-1) allowed home runs by Ozzie Albies and Freddie Freeman in the fourth inning. He gave up four hits in 6 2/3 innings.

Forsythe hit a solo home run off Sean Newcomb (7-2) in a three-run third to give the Dodgers the lead. He hadn't allowed a home run in his previous 44 innings pitched.

WHITE SOX 5, RED SOX 2

BOSTON (AP) — Reynaldo Lopez pitched into the seventh inning, Daniel Palka had a two-run double and the Chicago White Sox beat the Red Sox.

Lopez (2-4) gave up two runs and six hits while striking out six with three walks in 6 1/3 innings to improve to 1-3 in eight road starts this season.

Jose Abreu, Tim Anderson and Trayce Thompson added one RBI apiece for Chicago, which won two of three in the series and six of its last 10 overall. The White Sox capped their second winning road trip of the season by going 4-3. Joakim Soria pitched a scoreless ninth for his eighth save.

Red Sox starter Rick Porcello (8-3) gave up three runs and five hits over six innings. Rafael Devers drove in a run for Boston, which has lost three of four.

BLUE JAYS 13, ORIOLES 3

TORONTO (AP) — Curtis Granderson had four hits and a career-high six RBIs, Marco Estrada pitched six innings to snap an eight-start winless streak and the Blue Jays routed the struggling Baltimore Orioles to complete a four-game sweep.

Teoscar Hernandez hit a two-run homer and Kendrys Morales and Kevin Pillar each added solo blasts as the Blue Jays finished with a season-high 19 hits. Toronto had 17 hits in an 11-inning win at Cleveland on May 3. Estrada (3-6) allowed two runs and four hits, leaving after Jonathan Schoop homered to begin the seventh.

Orioles starter Alex Cobb (2-8) matched a career-worst by allowing nine runs and a season-high 11 hits in 3 2/3 innings. Baltimore has lost four straight and 11 of 13. Baltimore is 9-27 on the road and 19-45 overall, both worst in the majors, and has allowed 10 or more runs nine times this season.

REDS 6, CARDINALS 3

CINCINNATI (AP) — Center fielder Billy Hamilton made a bunch of key defensive plays and the Reds ended their 13-game losing streak to St. Louis, beating the Cardinals. Hamilton threw out two runners, then made outstanding catches against the wall in the eighth and ninth innings. He also tripled and scored twice.

The Cardinals' overall winning streak against Cincinnati was their longest since the 1930-1931 seasons. The Reds had lost 11 straight home games to St. Louis. Scooter Gennett drove in two runs and the Reds capitalized on the Cardinals' season-high 11 walks.

The Cardinals piled up 10 hits in five-plus innings against Anthony DeSclafani (1-1), who was making his second start since Sept. 28, 2016. Jared Hughes pitched the eighth and ninth for his fourth save.

The Reds scored five runs on just four hits in 3 2/3 innings against Carlos Martinez (3-3), who was making his second start since coming off the disabled list with a strained back muscle. He issued a season-high seven walks, one short of tying his career high.

PHILLIES 4, BREWERS 3

PHILADELPHIA (AP) — Zach Eflin tied his career high with nine strikeouts over six innings and the Phillies snapped a four-game losing streak by holding off the Milwaukee Brewers.

Eflin (3-2) had his second strong start after two subpar outings, allowing two runs and three hits with one walk. Rhys Hoskins drove in two runs, including a go-ahead sacrifice fly in a three-run fifth off reliever Dan Jennings (3-2) in the Phillies' fourth win in 14 games.

Milwaukee left the tying run at third in each of the final two innings. Seranthony Dominguez got Jonathan Villar to ground to the mound to end the eighth and Christian Yelich grounded to second for the final out to give Tommy Hunter his first save.

Ryan Braun saved a run with a diving catch, doubled to spark a two-run fifth and had an RBI single in the eighth for the Brewers, who had won two straight.

TWINS 7, ANGELS 5

MINNEAPOLIS (AP) — Jake Cave had a career-high three hits, including a home run, and the Minnesota Twins held on to beat the Los Angeles Angels.

Eduardo Escobar doubled twice to take over the major league lead with 26 and the Minnesota bullpen threw 3 2/3 shutout innings before a two-run single by Albert Pujols in the ninth. Los Angeles had the go-ahead run at the plate against closer Fernando Rodney, but Zack Cozart popped out.

Fernando Romero (3-2) had control issues from the outset, but managed to complete five innings to win for the first time in six starts. He allowed five hits and struck out five while throwing 94 pitches. Romero also hit two batters and threw two wild pitches.

Los Angeles starter Nick Tropeano (3-4) struggled for the second consecutive outing, allowing five earned runs in 4 1/3 innings.

PIRATES 7, CUBS 1

CHICAGO (AP) — Josh Harrison led off the game with a home run and Gregory Polanco hit a bases-loaded triple, leading Ivan Nova and the Pittsburgh Pirates over the Cubs.

Pittsburgh, which had managed a total of three runs in its previous four road games, ended its losing streak at three.

Nova (3-5) allowed one run on four hits in 5 2/3 innings to snap a four-decision skid and pick up his first win since April 15. He was activated before the game after missing two weeks with a sprained finger.

Anthony Rizzo drove in the lone run for Chicago, which had won four in a row. The Cubs trail the NL Central-leading Brewers by a half-game heading into a three-game series at Milwaukee starting on Monday. Kyle Hendricks (4-6) gave up one run on three hits in five innings.

DIAMONDBACKS 8, ROCKIES 3

DENVER (AP) — Paul Goldschmidt doubled and tripled and had two RBIs to finish off a dominating series and the Arizona Diamondbacks earned a victory over the Colorado Rockies.

Ketel Marte led off the second inning with his fourth home run of the season and added an RBI single in a three-run sixth. The single ended his streak of 10 straight hits for extra bases for Marte.

Kyle Freeland (6-6) allowed four runs and struck out eight in six innings for Colorado. The Rockies have lost seven straight at home for the first time since April 23 to May 10, 2016.

Colorado scored twice in the bottom of the sixth inning on Ian Desmond's two-run single that chased Zack Godley (6-5). Godley allowed two runs and five hits and struck out eight in 5 2/3 innings.

ATHLETICS 3, ROYALS 2

OAKLAND, Calif. (AP) — Matt Chapman homered leading off the eighth, moments after shortstop Marcus Semien's defensive gem, and the Athletics beat the Kansas City Royals.

Stephen Piscotty and Jonathan Lucroy both drove in runs for the A's, who squandered numerous scoring chances before Chapman came through with a solo home run off Royals reliever Jason Adam (0-1). Blake Treinen (3-1) retired five batters to win following a strong start by left-hander Sean Manaea. Winless since May 14, Manaea allowed six hits and two runs over 7 1/3 innings and had six strikeouts with no walks.

Whit Merrifield doubled off Manaea in the eighth and advanced to third on Mike Moustakas' groundout. Treinen replaced Manaea and got Salvador Perez to hit a grounder to shortstop. Semien made a diving stop then threw to home while still on his knees to nail a siding Merrifield at the plate.

Perez hit his 11th home run for the Royals, who have lost seven of eight.

___

More AP baseball: www.apnews.com/tag/MLBbaseball