Scott Hairston and Matt Garza kept the Chicago Cubs on a roll.
Hairston hit a grand slam, Garza got his first victory of the season, and the host Cubs extended their winning streak to five games by defeating the Arizona Diamondbacks, 7-2, on Friday.
Alfonso Soriano had a two-run homer and Cody Ransom added a solo shot for the Cubs, who scored all their runs on homers and have won five straight for the first time since winning seven in a row from July 31-Aug. 6, 2011.
The Cubs are still in fourth place in the NL Central, but they've shown signs of a turnaround.
Starting with a comeback 5-4 win last Sunday at Cincinnati that ended a six-game skid, Chicago has outscored opponents, 36-12, and has a plus-11 run differential, which is seventh-best in the National League.
‘‘We’re playing catch-up to everyone else, but the fact of the matter is it’s still a long season,’’ Cubs manager Dale Sveum said.
‘‘You've seen it before when teams can win 15 in a row, 14 out of 16 something like that and all of a sudden before you know it you’re right back in it and starting to have a lot of fun.’’
Hairston’s grand slam was the second in two games for the Cubs and was the highlight of a five-run third off Arizona starter Wade Miley (3-5).
Nationals 3, Braves 2 — Craig Stammen pitched four perfect innings after ace Stephen Strasburg left with a strained oblique on his right side, Denard Span tripled and scored two runs, and visiting Washington beat Atlanta.
Strasburg lasted just two innings before leaving the shortest outing of his career.
Orioles 7, Tigers 5 — Chris Dickerson hit a three-run, game-ending homer with two outs in the ninth inning, capping a four-run uprising against Jose Valverde that carried host Baltimore past Detroit.
Valverde entered in the ninth inning with a 5-3 lead after starter Max Scherzer retired the final 16 batters he faced.
Mariners 3, Twins 0 — Hisashi Iwakuma struck out five in 7⅔ innings and Kendrys Morales homered to lead Seattle to victory in Minneapolis.
Iwakuma (6-1) gave up seven hits and walked two and Jesus Sucre added two hits and an RBI for the Mariners, who snapped Minnesota’s four-game winning streak.
Tom Wilhelmsen picked up his 12th save.
Marlins 5, Mets 1 — Jacob Turner pitched seven scoreless innings in his season debut and Marcell Ozuna had three hits to help host Miami halt a nine-game losing streak.
Reds 6, Pirates 0 — Johnny Cueto allowed one hit over eight dominant innings and Cincinnati earned a shutout in Pittsburgh.
Brewers 8, Phillies 5 — Jonathan Lucroy went 5 for 5 with two home runs and four RBIs as visiting Milwaukee battered a struggling Cole Hamels to beat Philadelphia and snap their longest losing streak of the season at six games.
Rangers 7, Royals 2 — Derek Holland struck out eight and Nelson Cruz hit a long, tiebreaking three-run homer as host Texas beat Kansas City.
Athletics 3, White Sox 0 — Bartolo Colon tossed a five-hitter a week after turning 40, and host Oakland beat Chicago in a game that took only 2 hours, 14 minutes.
Astros 6, Angels 3 — Jason Castro’s leadoff homer triggered a three-run fourth and Dallas Keuchel pitched seven effective innings, leading visiting Houston over Los Angeles.
Dodgers 7, Rockies 5 — Los Angeles recovered from a ninth-inning blown save and scored two runs off Rockies closer Rafael Betancourt in the top of the 10th to beat slumping Colorado in Denver.
. . .
The game between the St. Louis Cardinals and San Francisco Giants was postponed Friday night because of rain. The contest was rescheduled for 1:15 p.m. Saturday as part of a day-night doubleheader.