KANSAS CITY, Mo. — Cardinals rookie Dakota Hudson tossed six innings of five-hit ball, Royals counterpart Brad Keller allowed a no-hit bid to crumble in spectacular fashion, and St. Louis went on to beat Kansas City 6-0 on Wednesday night for a two-game sweep.
Hudson (11-6) allowed runners to reach every inning but the third, but the 24-year-old right-hander kept getting timely double-plays, groundballs and fly outs. Hudson struck out five and walked two as the Cardinals won for the 13th time in his last 16 starts.
They also won their eighth straight against their cross-state rival at Kauffman Stadium.
Keller (7-13) issued three walks and was victimized by an early error, but he didn't allow a hit until Marcell Ozuna's sharp single leading off the seventh. It began a run of five consecutive base hits that not only knocked Keller from the game but ultimately resulted in a five-run frame.
Keller has lost four straight on the heels of a six-start span without a defeat.
The Royals, who were blanked 2-0 on Tuesday night, never got a runner past second base. Cheslor Cuthbert grounded out to strand two in the first, Nicky Lopez stranded runners in the second and fifth, and Bubba Starling grounded out to leave Ryan O'Hearn standing on second base in the fourth.
The Cardinals were following a similar roadmap until Ozuna's single in the seventh.
Paul DeJong and Matt Carpenter followed with hits to send Keller to the showers, and Yadier Molina and Kolten Wong followed with singles of their own. By the time Randy Arozarena singled for his first big league hit and Dexter Fowler hit a sacrifice fly, the Cardinals had taken a 5-0 lead.
DeJong added a mammoth homer in the eighth for his 20th home run, making him the first Cardinals shortstop with two seasons of at least 20 homers. DeJong hit 25 as a rookie in 2017.
Arozarena's first major league hit came in strange fashion during the Cardinals' big inning. He cracked a liner that hit Molina as he was attempting to run from second to third, but the umpire ruled that Lopez had touched the ball and that gave Arozarena a hit.
LOTS OF SQUATING
Molina passed Tony Pena for the seventh-most innings caught in major league history when the nine-time All-Star recorded the first out of the fourth inning. Molina has now caught 15,979 innings.
Cardinals outfielder Tyler O'Neill (left wrist strain) could return this weekend, manager Mike Shildt said, after going on the injured list Aug. 1. "I don't want to guarantee it," he added. "It's a combination of pain tolerance and grip, getting the pain tolerance and inflammation down."
Royals left-hander Danny Duffy (left hamstring strain) threw a bullpen session Tuesday with another scheduled for Friday. "He'll do a four-inning sim game on Tuesday and evaluate after that," manager Ned Yost said. Duffy has been on the shelf since Aug. 4.
The Cardinals send Michael Wacha (6-5, 5.54 ERA) to the mound in the opener of a four-game series in Cincinnati on Thursday night. The Royals get the day off before Mike Montgomery starts against the New York Mets in the opener of a three-game set Friday night.