>>Brewers Edge Cardinals
Keon Broxton drove in the go-ahead run and saved a run with a leaping catch, Matt Garza made a strong start in his return from the disabled list, and Milwaukee beat the St. Louis Cardinals 2-1.
Broxton, who robbed Jose Martinez of a homer in the second when he stretched his glove atop the center field wall, gave Milwaukee a 2-1 lead with a single in the fifth off reliever Brett Cecil (1-4).
Garza (5-5), making his first start since July 21 because of a right leg strain, gave up one earned run on four hits in 5 2/3 innings to give second-place Milwaukee its first home series win over St. Louis since July 2012. The Brewers, trying to stay close to first-place Chicago in the NL Central, won for just the fifth time in their last 17 games.
Kolten Wong missed a tying home run by a few feet when his drive to right-center bounced off the wall in the eighth. He was stranded at second when Anthony Swarzak retired Tommy Pham on a groundout and Matt Carpenter on a flyout.
Corey Knebel worked the ninth and struck out Greg Garcia with runners on first and second to earn his 20th save in 25 opportunities.
Cardinals starter Michael Wacha allowed one run on five hits in four innings. With the game tied at 1 in the fifth and runners on first and third, manager Mike Matheny pulled Wacha for pinch-hitter Luke Voit, who hit into an inning-ending double play.
Wacha's only blemish was Jesus Aguilar's homer to left in the third. Aguilar's drive was his 11th this season, and he homered in consecutive games for the first time in his career.
Mike Leake (7-9, 3:29) opens up a three-game set Friday at Cincinnati. He is 0-4 against his former team.
>>Red Sox Jump White Sox
The Boston Red Sox tagged Chicago for 15 hits and the Red Sox beat the White Sox 9-5 on Thursday night.
Rick Porcello (5-14) was winless in his last six starts, losing four straight before the Red Sox capitalized on the White Sox's woes with seven runs in the first two innings. He allowed five runs and seven hits and struck out six in 5 1/3 innings.
Rafael Devers hit a three-run homer in the first inning for Boston and Mookie Betts added a two-run shot in the second. Andrew Benintendi went 3 for 3, scoring twice and driving in a run as the Red Sox won their third straight. Benintendi reached base all five times he batted, getting hit by a pitch and walking once to go along with two doubles and a single.
Nicky Delmonico hit his first career homer, a three-run shot in the third, for the White Sox. Chicago lost its third straight and fell to 3-15 since the All-Star break.
Miguel Gonzalez threw 53 pitches without making it out of the second inning. He allowed seven runs, seven hits and hit a batter, before he was replaced by Gregory Infante with two outs in the second.
2B Yoan Moncada returned to the lineup after missing two games with a bruised knee. Moncada hurt the knee Monday in a collision with OF Willy Garcia, who has a broken jaw and could miss 4-to-6 weeks after surgery.
Carlos Rodon (1-4, 5.23 ERA) makes just his seventh start of the season, which he began on the DL with left biceps bursitis.
Eduardo Rodriguez (4-3, 4.16) is 1-0 at home this season and the Red Sox are 4-1 in his five starts.
>>Diamondbacks Outlast Cubs
Paul oldschmidt snapped a tie in the ninth inning with his third long drive of the game, and the Arizona Diamondbacks pulled out a rain-delayed 10-8 victory over the Chicago Cubs on Thursday.
The Diamondbacks first baseman hit a 3-2 pitch from Wade Davis (2-1) deep into the right-center bleachers with one out. J.D. Martinez followed with another solo blast off the Cubs closer.
Willson Contreras hit two home runs and had a career-high six RBIs for Chicago, which lost consecutive games for the first time since the All-Star break. The Cubs' NL Central lead over Milwaukee slipped to 1 1/2 games.
Jake Barrett (1-0), Arizona's fifth reliever, got two outs in the eighth for the win. Fernando Rodney worked around two walks in the ninth to earn his 24th save in 29 chances.
Jake Lamb singled in two runs in the eighth to put Arizona back ahead 8-7 after blowing a five-run lead. Chicago's John Jay tied game at 8 in the bottom of the inning when he bounced into fielder's choice with the bases loaded and Jason Heyward scored.
Jose Quintana was hit hard in his fourth start with the Cubs, allowing up six runs. The lefty had not permitted more than three runs in three starts since moving across town in a July 13 trade with the White Sox.
Arizona starter Zack Greinke allowed a season-high six runs in six-plus innings.
Contreras has 13 of his 18 homers since June 19 and is batting .343 since July 9.
The game started 90 minutes late because of storms and then was interrupted for 35 minutes in the second and 30 in the ninth.
Kyle Hendricks (4-3, 3.80) makes his third start since being activated from the DL on July 24 and faces Washington RHP Tanner Roark (8-7, 4.93) in an afternoon game. Hendricks allowed one earned run in five innings in a no-decision last Saturday at Milwaukee.