ST. LOUIS (AP) -- Brad Thompson pitched seven strong innings a day ahead of schedule, leading the pitching-starved St. Louis Cardinals to a 5-1 victory over the Kansas City Royals on Tuesday night.
Thompson started in place of Kip Wells, who was told three hours before the game that he was being sent to the bullpen. Wells leads the major leagues in losses and lasted only 1 1-3 innings in his last start at Kansas City, giving up six runs, three hits and four walks.
Chris Duncan homered for the third time in five games, and Albert Pujols and Scott Spiezio had an RBI apiece for the Cardinals, who won for only the fifth time in 14 interleague games.
Thompson (5-2) dominated the Royals a week after surrendering eight runs on 10 hits in 4 1-3 innings in Kansas City, and only three days after he worked two innings of scoreless relief. He allowed a run on seven hits, two each by Emil Brown and Alex Gordon, while striking out three and walking none.
Thompson and Todd Wellemeyer had been listed to pitch on Wednesday and Thursday, but were moved up a day. Wells, who signed a $4 million, one-year contract as a free agent during the offseason, is set to start on Sunday against the Philadelphia Phillies.
Duncan is 3-for-4 with three homers and seven RBIs against Scott Elarton, and his 13th homer was a two-run shot to straightaway center in the second for the game's first runs. Elarton was removed in the third just before Duncan could face him again, and Duncan added an RBI single off Neal Musser to cap a three-run rally that made it 5-0.
Duncan has 12 RBIs in his last five games. Pujols added a sacrifice fly and Spiezio had a run-scoring single in the inning.
Fernando Cortez doubled with one out in the seventh and scored on pinch hitter Joey Gathright's single for the Royals.
Elarton (2-3) faced the Cardinals for the second straight start, and both of them have been brief. He allowed five runs on five hits and a walk in 2 2-3 innings after giving up six runs in two innings on June 14 and getting no decision in a 17-8 victory.
Juan Encarnacion was 0-for-4 to end an 18-game hitting streak, the Cardinals' longest this year and one game off his career best.
So Taguchi singled in the third and is batting .450 with six RBIs (18-for-40) during a 12-game hitting streak that is one game longer than his previous best. ... Brown has four multihit games during a five-game hitting streak, batting .500 (10-for-20) with seven RBIs during that stretch. ... The Royals are 9-5 in interleague play, taking three of five from St. Louis. ... The Cardinals are 6-2 in Thompson's starts.