KANSAS CITY, Mo. -- The table was set for Kansas City's feast-or-famine offense and the Royals pigged out.
Two triples and five RBI for Mark Teahen. Four hits for Tony Pena Jr. Three RBI each for Emil Brown and David DeJesus, and a mammoth home run for Alex Gordon for the second night in a row.
It all added up to a 17-8 victory Thursday night over St. Louis one night after the Cardinals shut them out on one hit through eight innings. The Royals have averaged almost 10 runs in seven wins this month, including 17-run drubbings of two National League contenders within the last five days.
But if they aren't scoring large, they're hardly scoring at all, averaging only 1.5 runs in six June losses.
"I wish I knew," said manager Buddy Bell.
Teahen had an RBI single in the second inning, a two-run triple in the fourth and another two-run triple in the sixth, marking the 26th time in club history someone tripled twice in a game.
"If we could figure it out, we'd skip those games where we don't put up any runs," Teahen said. "I'm just going to enjoy the games like this. I wish we could save a few of these runs."
Taking two of the three games gave the Royals a series victory over their state rivals for the first time since 2001.
"Some of our younger guys are starting to play with some confidence, I think," Bell said. "We're getting some production from top-to-bottom."
Thirteen batters went to the plate in the eight-run second inning and 10 batted in the six-run fourth. Kansas City had 15 hits and the Cardinals had 11.
It was the third time in franchise history the Royals scored six or more runs in an inning twice in the same game, and the Cardinals' most lopsided loss since a 20-6 rout last June 20 at the Chicago White Sox.
"It was a tough night," commented St. Louis manager Tony La Russa, who had little to say.
Kip Wells, the first pitcher in the majors to 10 losses, became the first to 11. The right-hander (2-11), was charged with six runs on three hits and four walks in 1 1/3 innings, his shortest outing off the year. He lost his eighth straight decision.
"Not a whole lot to say," La Russa said. "He had a tough night. He struggled with everything. I don't think it makes a lot of sense to break it down. Just say he struggled and that he had a tough night."
Royals starter Scott Elarton was almost equally ineffective, lasting only two-plus innings and allowing six runs and five hits with three walks. The victory went to reliever Zack Greinke (4-4), who pitched four innings and gave up a run and four hits.
Greinke also won in relief in Sunday's 17-5 victory over Philadelphia.
"Obviously, when you score 17 runs you have production top to bottom," said Teahen. "That's key for us because we don't have an Albert Pujols."
The Cardinals got home runs from Pujols and Chris Duncan, who had a three-run shot off Elarton and an RBI single off Greinke.
Joey Gathright drew Wells' fourth walk, loading the bases with one out in the second, and a run came home when Wells hit DeJesus with an 0-2 pitch.
Esteban German then knocked Wells out of the game with a two-run single, bringing an ineffective Randy Flores out of the bullpen.
Teahen greeted Flores with an RBI single, and Brown's two-run double put the Royals on top 7-4.
Pena made it 9-4 a few minutes later with his second single of the inning. Gordon, whose home run Wednesday night traveled 430 feet, hit a two-run shot almost into the same spot in the fourth.
The Royals have also had games this month where they scored nine against Tampa Bay and eight against the Phillies. But they've been shut out by Cleveland's C.C. Sabathia and the Phillies' Jon Lieber. Wednesday night Adam Wainwright shut them down on one hit through eight innings.
"Some nights you're just going to run into guys who pitch well, keep the ball on the corner of the plate," said Teahen. "But if we can put up games like this when guys aren't right on top of their game, then it'll be good."
Juan Encarnacion singled to stretch his hitting streak to 14 games. ... Pena was the first Royal to get two hits in an inning since Gathright last Sept. 30 at Detroit. ... The eight-run second was their biggest since the Royals scored 10 last Aug. 23 against Cleveland.