ST. LOUIS (AP) _ The game was close, but the disparity was apparent as the American League ran its unbeaten streak in the All- Star game to 13 games.
The junior circuit displayed better pitching, hitting and fielding in a 4-3 win over the National League in St. Louis, giving the AL a 12-0-1 record since 1996.
The strong pitching came from the AL bullpen after Roy Halladay was reached for three runs in two innings. Halladay and six relievers combined to retire 18 straight National Leaguers after Prince Fielder's RBI double gave the NL a 3-2 lead in the second inning.
Curtis Granderson provided the game's biggest hit, slapping a one-out triple in the eighth before scoring the tiebreaking run on Adam Jones' sacrifice fly.
And game MVP Carl Crawford prevented the NL from grabbing a 4-3 lead in the seventh, running to the left field fence and making a leaping catch to rob Brad Hawpe of a certain home run. Crawford also had one of the AL's eight hits.
Most of the scoring came in the first two innings. The AL tallied twice in the first on first baseman Albert Pujols error and Josh Hamilton's RBI grounder.
The NL countered with a three-run second on four consecutive two-out hits. Yadier Molina Molina singled home the first run of the inning and scored the lead run on Fielder's ground-rule double.
The 3-2 lead lasted until the fifth, when Joe Mauer doubled home Derek Jeter to make it 3-3.
The senior circuit didn't get a hit in between Fielder's second-inning double and Orlando Hudson's two-out single in the eighth. But the National League had a chance to go ahead in the bottom of the eighth until pinch-hitter Ryan Howard struck out with runners on second and third to end the threat.
Jonathan Papelbon worked a perfect seventh for the win. Mariano Rivera retired three straight in the ninth for his All- Star game-record fourth career save.
Heath Bell was the loser.
The outcome gives home field advantage in the World Series to the American League.
(Copyright 2009 by The Associated Press. All Rights Reserved.)