Chicago — With the wind blowing out at Wrigley Field, the conditions were perfect for the St. Louis Cardinals to get their offense out of its funk.
Albert Pujols hit a three-run homer in the 10th inning, and Scott Rolen had a career-best five hits to help the defending World Series champions beat the Chicago Cubs, 12-9, on Sunday.
"The ball was blowing out of the park. You don't have to kill the ball to go out," said Pujols, who cleared the bleachers in left-center with his shot.
"I just tried to go back up the middle, and the ball went out of the park," Pujols said. "If you made a mistake, the hitter was going to make you pay."
St. Louis closer Jason Isringhausen couldn't hold a two-run lead in the ninth, but Pujols and the Cardinals recovered.
Giants 2, Diamondbacks 1
San Francisco - Barry Bonds hit his 740th home run, connecting for the second consecutive game and helping Matt Cain earn his first win.
Phillies 9, Reds 3
Cincinnati - Phillies slugger Ryan Howard homered in his first game back from an injury to help Freddy Garcia.
Braves 9, Mets 6
New York - Kelly Johnson started the day with a home run against Tom Glavine and finished off the Mets with another homer off Aaron Heilman (1-2).
Johnson homered on the first pitch of the game, then hit a three-run drive in the eighth.
Brewers 4, Astros 3
Milwaukee - Dave Bush pitched into the ninth inning in another strong performance against Houston.
Marlins 12, Nationals 6
Miami - Dan Uggla homered twice and drove in six runs, and Miguel Cabrera hit a drive into the upper deck for Florida.
Rockies 4, Padres 2
Denver - Jason Hirsh outpitched Greg Maddux for the second time this season to lead the Rockies to the win.
Pirates 7, Dodgers 5
Los Angeles - Kansas University product Tom Gorzelanny allowed three runs in six innings for the Pirates to improve to 3-0.
Tigers 6, White Sox 5 (10)
Detroit - Marcus Thames hit a tying homer with two outs in the ninth inning, and Placido Polanco singled home the winning run in the 12th for Detroit.
Rangers 4, Athletics 3
Arlington, Texas - Hank Blalock hit a two-run single, and Texas scored three times in the eighth to beat Oakland.
Eric Gagne got one out in the ninth for the Rangers before leaving due to a strained right hip. He landed awkwardly after throwing a pitch to Mark Ellis. Gagne eventually limped off the field and is day to day.
Angels 6, Mariners 1
Anaheim, Calif. - Ervin Santana allowed one run over seven innings, and Los Angeles completed a three-game sweep by handing Seattle its sixth straight loss.
Indians 6, Devil Rays 4
St. Petersburg, Fla. - Ryan Garko hit a go-ahead, three-run homer in the ninth inning, and Cleveland rallied past Tampa Bay to overcome an outstanding pitching performance by James Shields.
Orioles 7, Blue Jays 3
Baltimore - Nick Markakis and Miguel Tejada each had three RBIs, and Baltimore beat Toronto to complete its first three-game home sweep.
Red Sox 7, Yankees 6
Boston - Boston hit four straight homers to match a major-league record and finished a satisfying sweep of New York.
Manny Ramirez, J.D. Drew, Mike Lowell and Jason Varitek connected in a span of 13 pitches to give Boston a 4-3 lead.