MIAMI — When Jose Fernandez threw his final pitch, he pulled up in pain, rubbed his right knee and limped to the dugout.
He still looked better than his opponent.
Fernandez pitched seven innings and shook off calf cramps to help the Marlins beat the Royals 3-0 Wednesday and snap Kansas City's nine-game winning streak.
Fernandez grimaced after retiring Christian Colon with his ninth strikeout to end the seventh.
"I was cramping for the last five pitches," the former Alonso High standout said. "I was sweating and changed my uniform twice. Sweating, sweating. The last pitch, when I finished I felt the cramp and I was, 'Oooowwwww.' I came in and took some Gatorade, and I'm ready to go — fantastic."
Fernandez was laughing with teammates in the dugout in the ninth inning and joined in the postgame celebration.
ORIOLES 10, NATIONALS 8: Closer Zach Britton saw his streak of 43 games without allowing an earned run end before he stopped a ninth-inning rally for visiting Baltimore.
ANGELS 8, BLUE JAYS 2: Albert Pujols moved into 10th place all time with his 584th homer, Matt Shoemaker pitched six shutout innings and Los Angeles snapped an 11-game road losing streak.
RANGERS 6, REDS 5: Yu Darvish hit the second homer by a Rangers pitcher and Adrian Beltre hit a tiebreaking double in the eighth inning for visiting Texas.
YANKEES 5, MARINERS 0: Rookie hit his seventh home run in the past nine games and Masahiro Tanaka pitched seven shutout innings for visiting New York.
ASTROS 5, PIRATES 4: Evan Gattis homered and Carlos Correa got two hits and scored twice for Houston, which finished 5-2 on a road trip that began in Baltimore.
A'S 5, INDIANS 1: Kendall Graveman pitched into the seventh inning for host Oakland, which took two of three from the AL Central leaders.
CUBS 6, PADRES 3: Kyle Hendricks, who leads the majors with a 2.19 ERA, pitched six effective innings as visiting Chicago finished a three-game sweep.
BREWERS 7, ROCKIES 1: Ryan Braun hit two home runs and host Milwaukee tied a season high with its fourth straight win.
Around the league
MARLINS ADD FRANCOEUR: Miami acquired outfielder Jeff Francoeur from the Braves in a three-way trade that also involved the Rangers. Atlanta will receive minor-league shortstop Dylan Rogers, and Texas will receive international bonus money. Francoeur, 32, is batting .249 with a .290 on-base percentage and a .381 slugging percentage this season.
BOOST TO PUERTO RICO: Major League Baseball has agreed to hold games in Puerto Rico and will work with the players' association to invest $5 million in developing baseball on the island.
NAME CHANGE: The White Sox announced that beginning Nov. 1, U.S. Cellular Field will be named Guaranteed Rate Field after they inked a 13-year naming rights agreement with the national mortgage lender.
ANGELS: Closer Huston Street had season-ending arthroscopic surgery on his right knee.
METS: Rightfielder Jay Bruce left in the second with a cramp in his right calf. … Left-hander Jon Niese will have surgery on his left knee and could be out for the season.
ORIOLES: Right-hander Chris Tillman went on the 15-day disabled list, as expected. Tillman has been bothered by bursitis in his pitching shoulder.