J.D. Martinez blasted a go-ahead, solo home run in his first at-bat since June 16, lifting the Detroit Tigers to their eighth straight victory — a 2-1 decision over the Chicago White Sox. Martinez, who was activated from the 15-day disabled list earlier, jumped on the first offering from White Sox ace Chris Sale in the eighth inning. Sale (14-5) pitched a complete game, giving up two runs on six hits with a season-high 10 strikeouts. He had retired 11 straight batters before Martinez's home run. Shane Greene (2-2) picked up the victory with 1-1/3 innings of scoreless relief, including two strikeouts. Detroit starter Michael Fulmer held the White Sox to one run on five hits over 6-2/3 innings but wound up with his fourth straight no-decision. Cubs 5, Marlins 4 Matt Szczur scored on a wild pitch to cap a three-run ninth inning as the Chicago Cubs rallied to a 5-4 walk-off victory over the Miami Marlins. Chicago trailed 4-2 entering the ninth but A.J. Ramos gave up a leadoff double to Miguel Montero, a single to Javier Baez and walked Szczur on five pitches to load the bases. Dexter Fowler hit a sacrifice fly to right-center to score Montero. Ben Zobrist walked to bring home Baez and Ramos' two-out wild pitch sailed past Miami catcher Jeff Mathis and allowed Szczur to score the game-winner. Ramos (1-1) took the loss while reliever Justin Grimm (1-0), who was brought up from Triple-A Iowa on Wednesday, worked the ninth for the victory. Nationals 8, Diamondbacks 3 Daniel Murphy and Trea Turner homered and Washington right-hander Max Scherzer won his 12th game and contributed two RBIs. Murphy broke a 1-1 tie with a bases-empty homer in the sixth inning, and Scherzer capped the three-run rally with a two-run single for a 4-1 lead. Scherzer (12-6) pitched through bases-empty homers by Jake Lamb in the sixth inning and Yasmany Tomas in the seventh inning. Orioles 3, Rangers 2 Baltimore's Kevin Gausman outdueled Texas' ace Cole Hamels, leading the Orioles to their third straight victory. Gausman (3-8) allowed two runs on seven hits with seven strikeouts over seven innings. Matt Wieters had a pair of RBIs for the Orioles. Zach Britton picked up his American League-leading 33rd save for Baltimore. Blue Jays 3, Astros 1 Marco Estrada pitched seven strong innings and Josh Donaldson slugged a pair of home runs as Toronto topped Houston. Estrada (7-4) allowed one run on four hits with seven strikeouts. Blue Jays closer Roberto Osuna set the side down in order in the ninth inning for his 23rd save on the year. Twins 13, Indians 5 Minnesota continued its devastating attack on Cleveland pitching with a third consecutive rout. The Twins have won the first three contests of the four-game series, outscoring the Indians 35-16 and outhitting them 48-27. Minnesota starter Tyler Duffey (6-8) gave up five runs and eight hits in six innings. Trevor Bauer (7-5) allowed eight runs, seven earned, on eight hits and five walks in 2-2/3 innings. Joe Mauer had his second four-hit game of the series and added four RBIs. In the series, Mauer is 10-for-15 with five doubles, a triple, a home run and six RBIs. In other games it was: Rockies 12, Dodgers 2; Phillies 5, Giants 4 (12 innings); Yankees 9, Mets 5; Rays 12, Royals 0; Cardinals 5, Reds 4; Braves 8, Pirates 4; Mariners 3, Red Sox 1; Angels 8, Athletics 6; Padres 12, Brewers 3.