National League
Mets 5, Padres 3 — At San Diego, Jacob degrom (12-3) won his eighth straight start and New York held on when pinch-hitter Jabari Blash’s bid for a game-winning home run was barely foul. Degrom gave up two runs in eight innings.
Cardinals 8, Rockies 2 — At St. Louis, Randal Grichuk hit a tworun homer, Mike Leake (7-8) pitched seven scoreless innings and St. Louis improved to 20-5 against Colorado at home since the 2010 season.
Diamondbacks 10, Braves 2— At Phoenix, J.D. Martinez hit a three-run home run to help Zack Greinke (12-4) and Arizona handed Atlanta its third straight loss. Greinke allowed two runs on five hits in eight innings.
Pirates 10, Giants 3 — At
San Francisco, Andrew Mccutchen drove in four runs, Gerrit Cole (8-7) pitched six effective innings and Pittsburgh handed San Francisco its fourth loss in five games. his super rookie season, drilling a three-run homer in the eighth inning to rally Los Angeles to a win in its first game since ace Clayton Kershaw was injured.
Astros 13, Phillies 4 — At Philadelphia, Jose Altuve had two doubles and two singles, stretched his sizzling hitting streak to 16 games and helped Houston to its third win in four games. Altuve raised his major-league leading average to .365.
Indians 6, Reds 2 — At Cleveland, Josh Tomlin (7-9) pitched six efficient innings, Carlos Santana homered twice and Cleveland won its fourth straight. Tomlin gave up two homers but won his third straight start.
White Sox 3, Cubs 1 — At Chicago, Adam Engel and Matt Davidson homered and the White Sox snapped a nine-game losing streak. The Cubs lost for just the second time in 10 games following the All-star break.
Marlins 4, Rangers 0 — At Arlington, Texas, Giancarlo Stanton hit two more home runs and moved into a tie for the major league lead, sending Miami to its third win in four games. Stanton has six homers in his last seven games.