Chris Carpenter threw his first complete game of the season Thursday night and the St. Louis Cardinals beat the Colorado Rockies 6-1.
Carpenter (16-9) snapped a four-game losing streak — during which he posted a 7.17 ERA — with the four-hitter.
The Rockies, who were eliminated from the postseason on Tuesday, have lost 10 of 11.
Carpenter, who threw just 100 pitches, retired the last 10 batters in making his major league-leading and career-best 35th start. He walked two and struck out four in the 29th complete game of his career.
Gonzalez entered Thursday's play with a 13-point lead in the NL batting race over Cincinnati's Joey Votto. Gonzalez, who is hitting .338, will play Friday and Saturday, Rockies manager Jim Tracy said.
This is only the second series for these clubs this season. St. Louis was swept by Colorado July 6-8 at Coors Field. They have had the Cardinals number recently, winning 11 of the last 13 meetings.
Colorado starter Cole Hammel (10-9) went just three innings, allowing five runs and eight hits.
St. Louis made it 5-0 in the third when Pujols scored on a single by Colby Rasmus, who came home on a groundout by Matt Pagnozzi. Pagnozzi drove in the Cardinals' final run in the seventh.
Colorado's lone run came in the sixth when Dexter Fowler tripled and scored on a wild pitch.
NOTES: Cardinals minor league SS Lainer Bueno, a member of the club's Venezuelan Summer League roster, received a 50-game suspension Thursday for testing positive for clenbuterol. The suspension is effective at the start of the next season. ... Colorado's Troy Tulowitzki, who has 40 RBIs in September, the most ever for a Rockie, did not drive in a run against St. Louis.