Roy Halladay pitched a six-hitter and the Philadelphia Phillies became the first team to reach the playoffs this season with a 1-0 victory over the Houston Astros Wednesday. The NL East leaders clinched at least a wild-card berth and will appear in the postseason for the fifth straight year. Philadelphia, which had lost three in a row, needed a win over Houston or a loss by St. Louis Wednesday to wrap up the playoff spot. The Cardinals beat Pittsburgh 3-2. Shane Victorino doubled in the first inning and scored the only run on Placido Polanco's single. Braves 4, Marlins 1: Alex Gonzalez hit a three-run homer and Martin Prado bunted in a run during a four-run rally in seventh inning, and the revived Atlanta Braves beat the Florida Marlins to maintain their lead in the NL wild-card race. Cardinals 3, Pirates 2: The Pittsburgh Pirates clinched their 19th consecutive losing season, a record for a major league franchise in North America, losing to the St. Louis Cardinals as Yadier Molina hit a tiebreaking, two-run double. Giants 3, Padres 1: Carlos Beltran hit two homers to give him 300 for his career and Tim Lincecum ended a three-start winless stretch as the San Francisco Giants beat the San Diego Padres to complete a rare sweep in this rivalry. Reds 7, Cubs 2: Ramon Hernandez hit a three-run homer to help Cincinnati overcome the loss of pitcher Johnny Cueto and beat the Chicago Cubs. Cueto, the major league leader with a 2.31 ERA, left after 3 2-3 innings because of a strained muscle in the upper right side of his back. Nationals 2, Mets 0: Brad Peacock pitched five impressive innings, blanking the Mets on a mere two singles and earning his first major league win as the Washington Nationals held off New York. Center fielder Rick Ankiel made a diving catch in left-center on Jose Reyes' liner with runners at the corners for the final out. Rockies 6, Brewers 2: Carlos Gonzalez homered and drove in three runs to lift the Colorado Rockies to a 6-2 victory over the punchless Brewers on Wednesday night and snap a six-game skid in Milwaukee. In another game, LA Dodgers downed Arizona Diamondbacks 3-2.