BALTIMORE: Astros rookie Yuli Gurriel had a career-high four hits, including a home run, and Houston received a gritty pitching performance from Mike Fiers in an 8-7 victory over the Baltimore Orioles in Friday night baseball.

Colin Moran hit his first major league homer and first triple for Houston, and Brian McCann also went deep.

The Astros took an 8-2 lead into the ninth before Adam Jones hit a two-run double off James Hoyt, and Jonathan Schoop homered with two on against Chris Devenski.

After Chris Davis was thrown out trying to bunt against the shift, Ken Giles struck out Mark Trumbo to earn his 21st save.

Working in 90-degree temperatures on a steamy night at Camden Yards, Fiers (7-4) threw 105 pitches over seven innings. The right-hander struck out nine, including Jones three times, and allowed one run.

Coming off a four-game sweep of Texas, the Orioles hoped to continue their surge against baseball’s other team from the Lone Star State. Instead, Baltimore fell behind 5-0 in the second inning and dropped four games under .500.

Ubaldo Jimenez (4-6) gave up six runs and 10 hits in 5 1/3 innings. Houston finished with 16 hits, at least one from every starter.

Yankees 5 Mariners 1: In Seattle, Aaron Judge hit a colossal three-run homer that nearly soared out of Safeco Field, and CC Sabathia won on his 37th birthday as New York beat Seattle.

Judge’s 31st home run in the fifth inning was memorable and nearly historic. The big slugger clobbered a hanging curveball from starter Andrew Moore (1-2) into the second deck in left field, with the ball landing three rows from the top of the stadium. No one has hit one out of Safeco during a game since the ballpark opened midway through the 1999 season.

Judge came close and continued to emerge from a post-All-Star break slump thanks to his first home run since July 7. He finished with four RBIs, including a sacrifice fly that gave the Yankees a 2-1 lead.

Clint Frazier had an RBI double and a diving catch for New York. Sabathia (9-3) allowed one run in five-plus innings.

Cardinals 11 Cubs 4: In Chicago, Paul DeJong hit a tiebreaking, two-run double in St. Louis’ nine-run eighth inning as the Cardinals cooled off Chicago.

The Cubs carried a 3-2 lead into the eighth, looking for their seventh consecutive win. But St. Louis sent 14 batters to the plate in its highest-scoring inning of the season, taking advantage of a combined six walks by three relievers while improving to 4-4 since the All-Star break.

Carl Edwards Jr. (3-2) was pulled after the first three batters reached. Hector Rondon then walked Jedd Gyorko, tying it at 3, and DeJong followed with a drive into the ivy in right-center for a ground-rule double.

Carson Kelly hit a two-run double in his first game since being recalled from Triple-A Memphis. Tommy Pham’s two-run single made it 11-3 as 11 consecutive batters reached safely to begin the inning.

Willson Contreras hit a two-run homer for Chicago, and Jake Arrieta pitched six effective innings. Third baseman Kris Bryant sat out with a sprained left little finger.

Braves 12 Dodgers 3: In Los Angeles, Braves pitcher Jaime Garcia hit a grand slam off previously unbeaten Alex Wood to highlight Atlanta’s victory over the Los Angeles Dodgers.

Garcia, the subject of trade speculation lately, limited Los Angeles to three runs over seven innings as the Braves won their second straight at Dodger Stadium. The NL West leaders had not lost two in a row since June 5-6 against Washington. They’ve been outscored 18-6 in the first two games of the series.

It was the Dodgers’ most lopsided defeat of the season.

Wood (11-1) got knocked around by his former team. The All-Star left-hander gave up nine runs — seven earned — and nine hits in 4 2/3 innings, tying his shortest start since joining the rotation April 21. He struck out four and walked four.

Pirates 13 Rockies 5: In Denver, Pittsburgh rookie Josh Bell had a career-high four hits, Andrew McCutchen had three hits and reached base five times as the surging Pirates beat Colorado.

Rookie starter Trevor Williams (4-4) overcame a rough first to pitch 6 2/3 solid innings for his first win in more than a month. Pittsburgh has won a season-best six straight and 12 of 14 to move a game above .500 for the first time since opening 3-2.

The Pirates (49-48), who tied a season high with 18 hits, are within two games of first-place Milwaukee in the NL Central.

Pittsburgh jumped on Rockies starter Jeff Hoffman (6-2) and chased him three batters into the fourth. Bell had an RBI single in the first and a three-run double in the second to finish with a season-high four RBIs.

Red Sox 6 Angels 2: In Anaheim, California, Chris Sale pitched six scoreless innings and the Boston Red Sox rode a five-run first inning to this victory over the Los Angeles Angels.

Sale (12-4) allowed four hits and struck out nine to push his major league-leading total to 200. He walked one and lowered his American League-best ERA to 2.48.

He has won 11 of his last 13 decisions.

Sale improved to 6-0 against the Angels with a 1.23 ERA in seven starts (nine games).

Boston jumped on erratic Angels starter Ricky Nolasco (4-11) in the first, with six of its first seven batters collecting a hit. Nolasco went four innings and allowed all six runs on nine hits and a walk.

Diamondbacks 6 Nationals 5: In Phoenix, the Arizona Diamondbacks opened the game with three straight home runs off Washington Nationals ace Max Scherzer and ended it with Brandon Drury’s bases-loaded single in the bottom of the ninth inning to hold on for this narrow win.

The home runs by David Peralta, A.J. Pollock and Jake Lamb started the Diamondbacks on the way to a 5-0 lead.

The feat was the first in the majors since Baltimore did it against Texas in the bottom of the first on May 10, 2012.

It was the first time in Nationals history (2005 to present) that an opposing team has hit back-to-back-to-back home runs.

The Diamondbacks last hit three straight homers on Aug. 11, 2010, when they had four in a row at Milwaukee.

It was the most runs allowed by Scherzer in a first inning since July 2, 2011, against San Francisco, when he gave up five.