Adam Eaton won his career-best seventh straight decision, hit his first triple, and scored twice as the Padres beat Chicago, 6-2, last night in San Diego, snapping the Cubs' seven-game winning streak.
The West Division-leading Padres rebounded after losing consecutive games at home for the first time this season. Chicago's six-game road winning streak ended.
Cubs slugger Derrek Lee went 0 for 5, dropping his average to .379 -- still the best in the majors. Todd Hollandsworth had three hits.
Cubs righthander Sergio Mitre (0-1), who went to San Diego City College, was chased in the fifth, when he allowed four runs.
Eaton (8-1) has seven wins and two no-decisions in his last nine starts. The righthander hasn't lost since April 16 at the Los Angeles Dodgers. He allowed two runs and six hits in seven innings, struck out four and walked three.
Nationals 3, Marlins 2 -- Ryan Church drove in the winning run with a bases-loaded sacrifice fly off John Riedling in the bottom of the 11th to give Washington the win over visiting Florida.
The Nationals scored the winning run without the benefit of a hit -- in fact, the Nationals didn't have a hit after the fourth inning.
Cardinals 2, Astros 0 -- Chris Carpenter pitched eight mostly dominant innings, and Albert Pujols hit a solo homer in the ninth to lead visiting St. Louis.
Carpenter (8-3) became the latest pitcher to stifle the Astros' punchless offense, striking out six and walking two for his fourth win in five starts. Julian Tavarez got three outs for his third save.
Brewers 7, Dodgers 5 -- Carlos Lee hit a grand slam in the first inning, Bill Hall added a three-run shot, and Milwaukee beat host Los Angeles.
Chris Capuano (5-4) allowed two runs and five hits in six innings, including Olmedo Saenz's seventh homer. The lefthander struck out eight and walked one.
Pirates 3, Braves 1 -- Kip Wells threw shutout ball into the eighth inning, leading Pittsburgh past visiting Atlanta.
Rockies 12, Reds 4 -- Preston Wilson hit a pair of home runs to help Colorado beat Cincinnati at Denver.
The game between the San Francisco Giants and the Mets at New York was postponed because of rain. It will be made up tomorrow as part of a twinight doubleheader . . . Rain also postponed the Arizona Diamondbacks' game at Philadelphia and will be made up today in a doubleheader.