Roy Oswalt joined the Philadelphia Phillies from the Houston Astros, the second straight season the defending National League champions have acquired an All-Star pitcher near the trade deadline from a struggling team.
The deal was announced by the Astros in a statement on their website.
To get Oswalt, a three-time All-Star pick, the Phillies gave up their best young starter, J.A. Happ, and two prospects.
Oswalt, a 32-year-old right-hander, waived his no-trade clause and left the team he helped reach the World Series in 2005. He had asked to be traded in May, with the Astros in last place. They now are fifth in the National League Central.
The Phillies, World Series champions two years ago and NL title holders last season, are in second place in the East, 3½ games behind Atlanta. A year ago, they got Cliff Lee, the reigning American League Cy Young Award winner, in a deadline deal from the Cleveland Indians, who finished tied with Kansas City for last place in the AL Central.
Oswalt has a 3.42 earned run average and was 6-12 with the Astros, who currently sit 17 games under .500. He has a career record of 143-82 with an ERA of 3.24 in his 10th season.
He went 20-12 with a 2.94 ERA five years ago as the Astros won the NL pennant before being swept by the Chicago White Sox in the World Series.
Happ, a 27-year-old left-hander, has battled a forearm strain and been limited to three starts this season, his second full year in the major leagues. He has a career ERA of 3.11 and a 14-5 record over parts of four seasons.