Atlanta Braves' Chase d'Arnaud slides safely across home plate as he scores on a double hit by Freddie Freeman off Colorado Rockies relief pitcher Gonzalez Germen in the seventh inning of a baseball game Sunday, July 24, 2016, in Denver. Colorado won 7-2. (AP Photo/David Zalubowski)
Atlanta Braves' Chase d'Arnaud slides safely across home plate as he scores on a double hit by Freddie Freeman off Colorado Rockies relief pitcher Gonzalez Germen in the seventh inning of a baseball game Sunday, July 24, 2016, in Denver. Colorado won 7-2. (AP Photo/David Zalubowski) Credit: ap — David Zalubowski

Chicago — Melky Cabrera drove in Adam Eaton with a game-ending single in the ninth inning after closer David Robertson gave up three home runs in the top half to lead the Chicago White Sox to a 5-4 victory over the Detroit Tigers hours after they suspended ace Chris Sale for five days on Sunday.

The White Sox beat the Tigers 4-3 earlier in the day on a single by Eaton in the ninth after play was suspended because of rain the previous night.

Robertson (2-2) got the win in that one and picked up another victory in the scheduled game despite a rough ninth inning.

Justin Wilson (2-3) got the loss in the suspended game, and Bruce Rondon (3-2) lost the scheduled one.

Rangers 2, Royals 1

Kansas City, Mo. — Delino DeShields homered in the seventh to break a tie for Texas.

DeShields, who was recalled Thursday from Triple-A Round Rock, walked and doubled before leading off the seventh with his third home run.

The loss dropped the Royals to 48-49, the first time the World Series champions have been below .500 since May 15 when they were 18-19. The Royals have lost 13 of 19 games in July.

Padres 10, Nationals 6

Washington — Alex Dickerson and Ryan Schimpf hit back-to-back homers off Shawn Kelley in the eighth inning and San Diego scored four runs off Jonathan Papelbon in the ninth to beat Washington.

Ryan Buchter (2-0) pitched a scoreless eighth to earn the victory.

Orioles 5, Indians 3

Baltimore — Pinch-hitter Nolan Reimold hit a game-winning, two-out homer in the ninth inning after Pedro Alvarez reached on a strikeout, and Baltimore completed a three-game sweep.

Cody Allen (2-4) began the ninth by striking out Alvarez, but the ball eluded catcher Roberto Perez. After fielding the bouncing ball off the backstop, Perez hit Alvarez in the helmet with the throw for an error.

A sacrifice bunt and a strikeout followed before Reimold lined a 2-0 pitch into the left-field seats.

Yankees 5, Giants 2

New York — Nathan Eovaldi pitched shutout ball into the seventh inning, Carlos Beltran and Mark Teixeira hit early solo home runs and New York completed a 6-4 homestand that likely was too little and too late to keep management from selling off players ahead of the Aug. 1 trade deadline.

NL West-leading San Francisco completed a 1-7 road trip that opened the second half.

Cubs 6, Brewers 5

Milwaukee — Anthony Rizzo hit a three-run double in the seventh inning and Joe Nathan got the win in his first game in the majors since April 2015.

Nathan was activated off the 60-day disabled list earlier in the day, completing his comeback from Tommy John surgery.

The Cubs broke through against the Brewers bullpen after struggling with runners in scoring position against starter Junior Guerra.

Mets 3, Marlins 0

Miami — Steven Matz pitched six innings for his first win since May, and New York took the rubber game of a series against Miami.

Matz (8-6) allowed four hits, walked two and struck out six. Pitching despite a bone spur in his elbow, he had been 0-5 in his past nine starts with an ERA of 4.73.

Blue Jays 2, Mariners 0

Toronto — J.A. Happ and three relievers combined on a one-hitter, Edwin Encarnacion hit a solo home run and Toronto avoided a three-game sweep.

Happ (13-3) won his eighth straight decision and set a career-high for victories. The left-hander allowed Seattle’s lone hit, a single by Leonys Martin in the third.

Athletics 3, Rays 2

Oakland, Calif. — Billy Butler hit a tiebreaking home run off Erasmo Ramirez with one out in the eighth inning and Oakland held on.

Oakland won the previous two games on walkoff hits and led 2-0 until Logan Forsythe’s tying two-run homer in the top of the eighth.

Pirates 5, Phillies 4

Pittsburgh — Adam Frazier’s pinch-hit home run in the seventh inning powered Pittsburgh over Philadelphia.

Frazier’s home run was his first in the majors. It was given up by fellow rookie Edubray Ramos, who took his first career loss to fall to 1-1. Frazier’s homer made a winner of Pirates’ reliever Neftali Feliz (4-0).

Astros 13, Angels 3

Houston — Jose Altuve hit two of Houston’s season-high five homers and had a career-high six RBIs to help complete a three-game sweep.

There were runners at first and second with no outs in the first when Altuve connected off Tim Lincecum (2-4).

Rockies 7, Braves 2

Denver — Trevor Story lined his fourth homer in three games, Tyler Chatwood allowed one hit over five erratic innings and Colorado swept Atlanta.

Story launched a two-run shot in the fourth a day after breaking the NL rookie record for most homers by a shortstop. He now has 27 this season and moves closer to the major league rookie record for a shortstop. Nomar Garciaparra had 30 with Boston in 1997.

Diamondbacks 9, Reds 8

Cincinnati — Paul Goldschmidt’s solo home run in the fifth inning gave Arizona the lead for good, and the Diamondbacks finished with four homers.

Yasmany Tomas chipped in a pair of solo home runs and Wellington Castillo had a three-run shot.

Zack Godley (3-1) became the first pitcher in franchise history to reach seven career wins as a starter in as few as 10 starts.

Every Cincinnati starter except pitcher Brandon Finnegan (5-8) had at least one hit off Godley.