DETROIT — Max Scherzer pitched seven impressive innings, outdueling Zack Greinke and helping the short-handed Detroit Tigers beat the Los Angeles Dodgers 4-1 on Wednesday.

DETROIT — Max Scherzer pitched seven impressive innings, outdueling Zack Greinke and helping the short-handed Detroit Tigers beat the Los Angeles Dodgers 4-1 on Wednesday.

Detroit was without sluggers Miguel Cabrera and Victor Martinez, but the AL Central-leading Tigers scored two runs in the first inning and Scherzer (11-3) made the lead hold up. The All-Star right-hander allowed a run and four hits. He struck out seven and walked two.

Joba Chamberlain struck out two in the eighth, and Joe Nathan fanned two in a perfect ninth for his 18th save in 23 chances.

Greinke (11-5) allowed three runs and seven hits in seven innings. He struck out eight without a walk.

Miguel Rojas of the Dodgers hit his first career homer.

Giants 5, Athletics 2

At San Francisco, Hunter Pence homered and drove in two runs, Matt Cain tossed six strong innings and San Francisco spoiled Jason Hammel's debut for Oakland.

Cain (2-7) allowed two runs and five hits for his first win since May 15 against Miami. He struck out four and walked two to help the Giants snap Oakland's six-game winning streak.

Hammel (0-1), acquired by the A's along with fellow right-hander Jeff Samardzija from the Chicago Cubs last week for three top prospects, disjointed the thumb on his glove hand but stayed in the game. He left after giving up six hits and three runs — two earned — in five innings.

Nationals 6, Orioles 2

At Baltimore, Doug Fister allowed two runs over seven innings and Washington hit three solo homers in a victory over Baltimore.

Wilson Ramos, Ian Desmond and Jayson Werth connected for the Nationals, who took control early and cruised to the finish in this interleague matchup between first-place clubs located 40 miles apart on I-295.

American League

Twins 8, Mariners 1

At Seattle, Kendrys Morales knocked in three runs and Kyle Gibson pitched six shutout innings to lead Minnesota past Seattle.

Chris Colabello hit a two-run double, Brian Dozier scored twice and the Twins put up eight runs in the first four innings to chase an ineffective Roenis Elias (7-8). The rookie lasted a career-low 31/3 innings, yielding seven runs — six earned — and seven hits with three walks.

Gibson (8-7) allowed multiple baserunners in three innings and only retired the side in order once. But he worked around seven hits and a walk, rebounding from a rough outing against the Yankees.

Yankees 5, Indians 4, 14 innings

At Cleveland, Jacoby Ellsbury's two-out homer in the 14th inning sent New York to a victory over Cleveland.

Red Sox 5, White Sox 4

At Boston, Daniel Nava doubled home the tying run in the ninth inning and scored on Brock Holt's single as Boston rallied from a four-run deficit to beat Chicago and snap a four-game losing streak.

Angels 8, Blue Jays 7

At Anaheim, Calif., Albert Pujols hit a go-ahead, two-run homer in the seventh inning and Kole Calhoun also connected to lead Los Angeles over Toronto.

Royals 5, Rays 4

At St. Petersburg, Fla., Salvador Perez hit a go-ahead, three-run homer in the ninth inning to lift Kansas City over Tampa Bay.

Astros 8, Rangers 4

At Arlington, Texas, Robbie Grossman snapped an 0-for-28 slide with a career-high four hits and Houston climbed out of last place in the AL West, completing a three-game sweep with a victory over All-Star pitcher Yu Darvish and Texas.

Grossman and rookie George Springer homered for the Astros, who moved into fourth place by a percentage point over the slumping Rangers.

National League

Reds 4, Cubs 1

At Cincinnati, Alfredo Simon became the NL's first 12-game winner and Billy Hamilton added to his sensational series with a tiebreaking triple, leading Cincinnati over the trade-depleted Chicago Cubs.

The Reds won their fifth in a row — matching their season high — and moved a season-best seven games over .500. They'll try for their first five-game sweep since 1976 today.

Diamondbacks 4, Marlins 3,10 innings

At Phoenix, Paul Goldschmidt doubled in the last two of Arizona's three runs in the 10th inning, giving the Diamondbacks a comeback victory against Miami.

The Marlins took a 3-1 lead in the 10th on Donovan Solano's two-run double off winner Brad Ziegler (4-1).

Aaron Hill opened the Arizona 10th with a pinch-hit single off Steve Cishek (4-5). Ender Inciarte walked on four pitches, then David Peralta's RBI single cut the lead to 3-2.

Goldschmidt hit the next pitch to left-center for his major league-best 35th double and his fifth career walk-off hit.

Rockies 6, Padres 3

At Denver, Troy Tulowitzki hit two of Colorado's five home runs in a win over San Diego.

Drew Stubbs, Charlie Blackmon and Wilin Rosario also went deep for the Rockies, who won a home series for the first time since taking two of three from the Padres in May.

Mets 4, Braves 1

At New York, Dillon Gee pitched into the eighth inning after two months on the disabled list, Travis d'Arnaud hit a two-run homer and New York beat Atlanta for its first four-game winning streak in a year.

Phillies 4, Brewers 1

At Milwaukee, Jimmy Rollins and Chase Utley homered to support Roberto Hernandez's solid start, and Philadelphia beat Milwaukee for its third straight win over the NL Central leaders.

Cardinals 5, Pirates 2

At St. Louis, Lance Lynn reached double figures in wins before the All-Star break for the third consecutive year and Kolten Wong homered for the second game in a row, helping St. Louis beat Pittsburgh for the third straight time.

Matt Adams had three hits and two RBIs for the Cardinals, who will go for a four-game sweep today — although they might have to do it without All-Star catcher Yadier Molina. He was removed in the third inning with a sprained right thumb and will be re-evaluated today.