Cardinals 3, Rockies 0: Adam Wainwright carried a no-hitter into the eighth inning and was one out from St. Louis' second straight one-hitter in a victory over Colorado. The Rockies were hitless in 49 consecutive at-bats before Nolan Arenado lined a single to center field with one out in the eighth.
Dodgers 7, Marlins 1: Andre Ethier had two doubles among his four hits, Dee Gordon hit a rare home run, and Los Angeles snapped an eight-game losing streak with a victory over Miami.
Cubs 8, Nationals 2: Washington's Stephen Strasburg fell apart after one of Ryan Zimmerman's two errors and dropped his fifth consecutive decision. Edwin Jackson hit a two-run double and earned his first win for Chicago.
Reds 13, Brewers 7: Jay Bruce homered his first time up, then doubled twice during a seven-run burst as Cincinnati pounded Milwaukee.
Blue Jays 3, Red Sox 2: Adam Lind hit a tiebreaking homer off Boston closer Junichi Tazawa leading off the ninth inning to lift Toronto.
Indians 7, Tigers 6: Ubaldo Jimenez outpitched Justin Verlander, and Cleveland's Chris Perez got Miguel Cabrera to hit a game-ending groundout with two runners on base to preserve the Indians' win over Detroit
Rangers 8, Astros 7: Adrian Beltre, Nelson Cruz and Lance Berkman homered as Texas beat Houston.
Angels 3, White Sox 2: Mike Trout hit a two-run homer to help Los Angeles beat Chicago.
Rays 8, Padres 7: Evan Longoria hit a two-run homer with two outs in the bottom of the ninth off Huston Street, rallying Tampa Bay past San Diego.
Phillies 3, Diamondbacks 1: Cliff Lee pitched seven scoreless innings and Jimmy Rollins drove in two runs as Philadelphia ended Arizona's winning streak at five games.
-- ASSOCIATED PRESS