ST. LOUIS: The Philadelphia Phillies piled on a season-best nine runs in the eighth inning to overwhelm the St. Louis Cardinals 10-2 in Major League Baseball Tuesday. In the only all-National League meeting amid Interleague play, Jimmy Rollins and Chase Utley each had a two-run single in the eighth, while Carlos Ruiz had four hits and one of two bases-loaded walks. The NL East-leading Phillies have won Roy Halladay's last seven starts, even if Tuesday's surge came too late for him to be credited with the win. That instead went to reliever Michael Stutes (2-0), who pitched one inning, allowing one run. Cardinals reliever Trever Miller (0-1) took the loss. Brewers 5, Rays 1: In Milwaukee, Zack Greinke struck out 10 over seven innings to direct Milwaukee to a win over Tampa Bay. Greinke (7-2) struck out at least a batter in every inning, including the side in the third, and gave up one run. Yuniesky Betancourt homered in the second off Rays rookie Jeremy Hellickson (7-6) and Ryan Braun hit a two-run single in the seventh. Braves 5, Blue Jays 1: In Atlanta, Brian McCann hit a two-run homer that powered Atlanta past Toronto. Atlanta took a 4-1 lead in the third on McCann's 12th homer and Alex Gonzalez's RBI double off Toronto rookie Zach Stewart (0-1), who allowed five runs and three walks in 3 2-3 innings. Jason Heyward had an RBI single and Braves starter Mike Minor (1-2) ended a nine-start winless streak, allowing one run and striking out a season-best eight in seven innings. Atlanta has won three in a row, while the Blue Jays have scored just two runs in losing three straight on the road. Rockies 4, Indians 3: In Cleveland, Seth Smith's second homer of the game snapped a ninth-inning tie and gave Colorado victory over Cleveland. In other games it was: Padres 5 Red Sox 4; Nationals 6, Mariners 5; Dodgers 6, Tigers 1; Diamondbacks 7, Royals 2; Twins 9, Giants 2; Marlins 5, Angels 2; Athletics 7, Mets 3; Pirates 9, Orioles 3; Rangers 5, Astros 4, 11 innings; White Sox 3, Cubs 2.