KANSAS CITY, Mo. (AP) -- It was hot on the field, and Jordan Zimmermann had been sick for two days. And still the Royals were no match for the Tigers right-hander.
Zimmermann allowed two hits over five scoreless innings, Nicholas Castellanos had three extra-base hits and Detroit beat Kansas City 3-2 on Saturday.
Zimmermann (2-0) improved to 4-0 with a 1.48 ERA in seven appearances, including six starts, against the Royals. This shut-down performance came while battling flu-like symptoms.
"Coming back from that took a lot out of me," said Zimmermann, who noted the 83-degree first-pitch temperature was the highest of any of his starts this year. "I was happy to be able to go five and pitch pretty well and give the team a chance to win."
Zimmermann did not give up a hit until Lucas Duda's two-out double in the fourth. He exited after 85 pitches, waking three and striking out five while battling flu-like symptoms.
"I think more than anything else, your energy just gets zapped when you're fighting those things all night long and not sleeping well," Tigers manager Ron Gardenhire said. "We knew it going in. His body was aching pretty good, but he wanted to go. He sucked it up there for almost 90 pitches. He gave us as many innings as he could give us. Pretty impressive."
Castellanos had an RBI double as the Tigers scored three runs in the first inning off Jason Hammel (0-4).
Detroit held on from there, even after Kansas City cut the lead to one in the ninth. Lucas Duda led off with a double and scored when center fielder Leonys Martin dropped Alex Gordon's line drive that struck him in the forehead. Shane Greene struck out Alcides Escobar and Jon Jay to strand Gordon and log his sixth save.
"You get in that situation where you're just one hit from tying it up and really a double away from winning the ball game," Yost said.
The Royals loaded the bases with two outs in the fifth, but Zimmermann struck out Mike Moustakas on four pitches to end the jam.
Zimmermann did not give up a hit until Duda's two-out double in the fourth.
The Tigers jumped out to a 3-0 lead after six hitters. Castellanos, Victor Martinez and John Hicks had RBI doubles in the first.
The Royals got on the board in the sixth when Abraham Almonte snapped an 0-for-12 skid with a home run off left-hander Blaine Hardy, who was called up Friday.
Hammel settled down after the first and pitched 6 2/3 innings. He gave up 10 hits, walked one and struck out five.
"It is tough to come out and give up three in the first inning," Hammel said. "I've got to do a better job setting the tone. Fighting from behind is not easy. The first inning, I was flat with the two-seam and a changeup to Castellanos I'd want back, just an 0-2 bad pitch. We got some length, but good enough length to lose."
The Tigers loaded the bases in the seventh, but reliever Brian Flynn retired JaCoby Jones on a foul pop up to third baseman Moustakas to end the threat.
Martinez, Martin and James McCann each had a pair of hits for Detroit.
Jorge Soler went 0 for 4, snapping his career-high 19-game on-base streak and 10-game hitting streak.
Royals RHP Jason Adam pitched a scoreless ninth in his major league debut, walking one, allowing Castellanos' second double and striking out one. Adam is from Blue Valley Northwest High, a Kansas City suburb. "The first hitter I was definitely nervous," Adam said. "I think we saw that with a walk. It was just a surreal moment. I had a lot of people tell me to take it in when you jog in and I did." ... Gardenhire said C Grayson Greiner will start Sunday for his big league debut. He was called up Friday from Triple-A Toledo, where he hit .259 in 17 games.
PERFECT ON CHALLENGES
Bill Duplissea, the Royals' instant replay coordinator, is perfect in nine challenges this year. The Royals are the only team in the majors with a perfect challenge record this year.
Tigers: There is no timetable when 1B Miguel Cabrera (right hamstring strain) will return after being placed on the 10-day disabled list Friday. "I can't tell you if 10 days is enough, only he will be able to do that as we go along," Gardenhire said.
Tigers: LHP Matthew Boyd will start the series finale. He is 2-5 with a 7.05 ERA in 10 career starts against Kansas City.
Royals: RHP Jakob Junis has a 5.19 ERA in three home starts this season.