ST. LOUIS -- The new Joel Pineiro got results a lot like the old-old Joel Pineiro.

Continuing to lean on a sinker-heavy, pitch-to-contact philosophy, Pineiro pitched his first shutout in six years on Tuesday night. He allowed three hits and no walks as the Cardinals beat the Cubs, 3-0, to end a three-game losing streak.

Pineiro put the game in the hands of his defense, and the men behind him delivered. Yadier Molina made a key pickoff of Alfonso Soriano after Soriano led off the game with a single, and for the rest of the night his teammates followed suit. Pineiro faced one batter over the minimum, threw only 92 pitches and was simply never threatened. He retired the last 13 batters in a row.

The right-hander played off of an aggressive Chicago team, inducing quick outs -- highlighted by a four-pitch fourth inning.

"When we had our meetings, we kind of knew," Pineiro said. "They're a very aggressive team. They want to try to knock the pitcher out and get him out of the game early. If you make your pitches down in the zone, they'll be on the ground like they were today."

Pineiro threw the fewest pitches in a nine-inning complete game of any Major Leaguer this year, according to Baseball-Reference.com. The last hurler to pitch a nine-inning complete game with fewer pitches was Roy Oswalt, who shut out the Pirates on 91 pitches on Sept. 11, 2008.

That's the sort of work that makes infielders smile.

"As an infielder, you've got to love when a sinkerballer is throwing," said Brendan Ryan, who had six assists among Pineiro's 17 ground-ball outs. "When he's got his stuff, it makes it all the more fun. What can you say about JP? That's as fun as it gets. Everybody got in the act. That's just fun baseball."

All of the Cardinals' runs scored with two outs, and Ryan was at the center of both of St. Louis' scoring innings.

Ryan led off the game by drawing a walk against Cubs starter Ted Lilly. He took second on Colby Rasmus' sacrifice bunt, stole third and scored when Yadier Molina poked a two-out single into center field. He walked again in the third, as did Joe Thurston, but the Cards couldn't advance the two inning-opening baserunners. But in the fifth, St. Louis seized control of the game.

After Pineiro struck out and Thurston lined out, Ryan stayed with an 0-2 changeup from Lilly and singled to center to keep the inning alive. It wasn't a bad pitch, just simply a fine job of hitting by Ryan.

"He's got a pretty good changeup, and obviously I didn't recognize the first two very well," Ryan said. "I didn't want to get beat with a third one. I certainly didn't smash it, but I was trying to stay on whatever pitch he was going to throw because he's got four of them. I just didn't want to get beat with another changeup, and I was able to stay with it and poke one off the end of the bat."

Lilly also got ahead of Rasmus, 0-2, and also couldn't put him away. Rasmus laid off a fastball outside of the zone and fouled off a curveball, hanging in against the lefty. That's when Lilly finally made a mistake, leaving a fastball up and over the plate -- and Rasmus punished him for it. The emerging rookie jumped all over the pitch, hammering it 417 feet to right field.

"He's tough," Rasmus said. "That curveball, he's good. He makes good pitches. Fortunately, he made a little mistake."

Rasmus has been on a power jag lately, hitting three home runs in five games. He also hit one that didn't count, in the second inning of Friday night's rain-abbreviated game.

But Pineiro and his defense were so good that even those last two runs weren't necessary.

"It was a masterpiece," manager Tony La Russa said.