National League

• Giants 4, Nationals 2: In San Francisco, Pablo Sandoval hit a two-run home run in the bottom of the 10th inning after Gregor Blanco's tying triple in the ninth. It was Sandoval's second career walk-off hit - both home runs against the Nationals - and San Francisco's sixth walk-off win this season.

• Cardinals 10, Padres 2: In San Diego, Daniel Descalso hit his first career grand slam and collected a career-high five RBIs, and Adam Wainwright won for the first time at Petco Park. Wainwright held San Diego to one run and four hits in 7 1/3 innings, struck out six and walked one.

• Brewers 5, Dodgers 2: In Milwaukee, Carlos Gomez hit a go-ahead two-run double, Jonathan Lucroy had three hits and an RBI and five Milwaukee relievers combined for five scoreless innings.

• Reds 4, Mets 0: In New York, Mike Leake pitched three-hit ball for seven sharp innings and Cincinnati parlayed star third baseman David Wright's early error into a 4-0 lead. The Reds won for the ninth time in 11 games.

• Phillies 7, Marlins 3: In Miami, Delmon Young homered and Ryan Howard added three hits and three RBIs. Tyler Cloyd allowed two runs and eight hits in seven innings. He was recalled from Triple-A Lehigh Valley earlier in the day.

• Pirates 5, Cubs 4: In Pittsburgh, Travis Snider hit a pinch-hit grand slam during a five-run sixth and the Pirates spoiled a strong return to the mound for Matt Garza.

American League

• Tigers 5, Indians 1: In Cleveland, Miguel Cabrera hit a two-run homer and Max Scherzer retired 22 straight batters after the first inning to end the Indians' winning streak at five and trim their lead in the AL Central.

• Rays 4, Blue Jays 3: In Toronto, Kelly Johnson and Desmond Jennings homered and Alex Cobb won for the first time in three starts. Cobb allowed one run and three hits in 6 1/3 innings for his first victory since May 5 at Colorado.

• Athletics 1, Rangers 0: In Arlington Texas, rookie right-hander Dan Straily pitched seven scoreless innings and Yoenis Cespedes homered as the Athletics won their fifth straight game. Straily gave up two singles while facing 22 batters, one over the minimum for his seven innings.

• White Sox 3, Red Sox 1: In Chicago, Jose Quintana took a no-hitter into the seventh before David Ortiz broke it up with a one-out broken-bat single. Jeff Keppinger hit a two-run homer off Felix Doubront in the fifth. Alex Rios extended his career-high hitting streak to 16. The White Sox won for the sixth time in eight games.

• Royals 7, Astros 3: In Houston, Mike Moustakas tied it with an RBI single before George Kottaras scored the go-ahead run on a bases-loaded walk in a four-run eighth inning. The Royals rallied to end a four-game skid.

• Angels 12, Mariners 0: In Anaheim, Mike Trout hit for the cycle and drove in five runs, Josh Hamilton celebrated his 32nd birthday with a homer and a triple, and Howie Kendrick also went deep. Jerome Williams scattered six hits over eight innings, struck out six and walked two while helping send the Mariners to their season-high fifth straight loss.

Interleague • Braves 5, Twins 4: In Atlanta, Evan Gattis hit a two-out, pinch-hit homer in the ninth to send the game to extra innings and Freddie Freeman won it in the 10th, to win their fifth straight. Freeman blooped a two-out single off Brian Duensing to bring home Jason Heyward, handing the Twins their seventh straight loss.