John Lackey threw seven scoreless innings and St. Louis beat Chicago despite Jon Lester taking a no-hitter into the seventh.

Signed to a six-year, $155 million deal over the off-season, Lester (4-7) remained winless in nine straight starts since beating Pittsburgh on May 16. He allowed two hits and two unearned runs while striking out eight for Chicago.

Lester's bid for his second career no-hitter ended with one out in the seventh when Kris Bryant couldn't handle Jhonny Peralta's sharp grounder in back of third base.

The Chicago defence then let Lester down when Bryant's throw to second on a Jason Heyward grounder went into right field. That was followed by Yadier Molina's run-scoring sacrifice fly to right, and Kolten Wong's RBI single to left that put St. Louis ahead 2-0.

DODGERS 10, PHILLIES 7

LOS ANGELES - Jimmy Rollins hit a go-ahead single in the seventh inning against his former team, rallying NL West-leading Los Angeles past last-place Philadelphia.

With one out, Jeanmar Gomez gave up consecutive singles to Yasiel Puig and Andre Ethier, who moved up on pinch-hitter Alberto Callaspo's groundout to the pitcher. Rollins followed with a two-run single to left-centre, and Cody Asche's throw home pulled catcher Carlos Ruiz away from the plate. He stretched in an effort to tag Ethier, but lost the ball in the process.

Rollins came home on a double by All-Star rookie Joc Pederson, giving the Dodgers a 10-7 lead in a game that lasted 4 hours, 13 minutes.

WHITE SOX 4, BLUE JAYS 2

CHICAGO - Chris Sale's bid for a record strikeout streak ended, but he pitched a six-hitter to help the Chicago White Sox to a 4-2 victory over the Toronto Blue Jays on Monday night in the fastest major league game in almost four years.

Sale (7-4) had struck out at least 10 batters in eight straight starts, matching the major league mark set by Pedro Martinez in 1999. The All-Star left-hander finished with six strikeouts while outpitching former mentor Mark Buehrle (9-5), who also went the distance.

There were no walks in a game that took only 1 hour, 54 minutes. It was the speediest big league game since Tampa Bay and Kansas City took 1:53 on Aug. 9, 2011, STATS said.

All of Chicago's runs were unearned. An error by shortstop Jose Reyes leading off the eighth helped the White Sox score three times and overcome a 2-1 deficit.

Josh Donaldson and Chris Colabello homered for Toronto.

BRAVES 5, BREWERS 3

MILWAUKEE - Kelly Johnson homered and drove in three runs as Atlanta ended Milwaukee's eight-game winning streak.

The game was held up in the ninth inning while an injured fan received medical attention after getting hit by a line drive.

A.J. Pierzynski had four hits, including two doubles, and rookie pitcher Matt Wisler won for the third time in four career starts.

Johnson launched a two-run homer to right field in the first off Kyle Lohse. Milwaukee avoided further damage when Juan Uribe was caught in a rundown after attempting to score on a grounder to third later in the inning.

Gerardo Parra hit a leadoff homer for the Brewers in the bottom half, his third this season.

METS 3, GIANTS 0

SAN FRANCISCO - Jonathon Niese pitched eight sharp innings for his first win in nearly two months, and New York beat San Francisco to hand the World Series champions their seventh straight defeat.

Johnny Monell snapped a scoreless tie with a two-run double in the ninth against his former team. Michael Cuddyer had two hits, including a single that started the winning rally, to help the Mets improve to 3-1 on a six-game West Coast trip.

It was New York's second consecutive shutout, including an 8-0 victory Sunday at Dodger Stadium behind rookie Steven Matz.

Juan Lagares added an RBI single to make it 3-0, and Jeurys Familia closed for his 23rd save. Mets pitchers have allowed exactly three hits in each of their last three wins.

TIGERS 12, MARINERS 5

SEATTLE - Nick Castellanos hit a home run and drove in four runs to lead a 19-hit outburst from Detroit in a win over Seattle.

Castellanos had a season-high four hits and matched a season best with four RBIs. Victor Martinez added four hits, while J.D. Martinez had three hits and two RBIs.

Mayckol Guaipe (0-1) took the loss after allowing three runs on two hits and a walk without getting an out in relief.

Alfredo Simon (8-5) gave up five runs on eight hits in 5 2/3 innings to earn the win.

Mariners starter Hisashi Iwakuma allowed five runs on eight hits in five-plus innings. He struck out three in his return from a strain in his back and right shoulder area that sent him to the disabled list in April.

TWINS 4, ORIOLES 2, 10 INNINGS

MINNEAPOLIS - Brian Dozier hit a two-run homer in the 10th inning to lift Minnesota to the victory.

Dozier lined a 2-1 pitch from Tommy Hunter (2-2) into the seats in left for his 17th homer. Earlier in the day, Dozier was selected as one of the five candidates for the final roster spot on the AL All-Star team.

Trevor May (5-7) pitched a scoreless 10th inning to earn the win in his first relief appearance of the season.

Torii Hunter and Aaron Hicks also homered for Minnesota. Manny Machado and Adam Jones went deep for Baltimore.

ASTROS 9, INDIANS 4

CLEVELAND - Dallas Keuchel pitched six innings on the same day he was selected for the AL All-Star team, leading Houston to the road win.

Keuchel (11-3), who leads the league in wins and is second with a 2.14 ERA, is a strong candidate to start next Tuesday's game in Cincinnati. The left-hander allowed three runs and nine hits.

An anticipated pitching duel between Keuchel and Carlos Carrasco never materialized. Carrasco (10-7), who came within one out of a no-hitter against Tampa Bay on Wednesday, allowed five runs in four innings.

Preston Tucker had a career-high four hits for Houston, including a solo homer in the fourth. Jose Altuve, Houston's All-Star second baseman, matched his career-high 14-game hitting streak with two hits.

PIRATES 2, PADRES 1

PITTSBURGH - Pedro Alvarez singled home the winning run with two outs in the ninth inning, sending Pittsburgh to its eighth win in 10 games.

Alvarez's second career game-ending hit also beat his father-in-law, Padres interim manager Pat Murphy.

Andrew McCutchen started the winning rally with a one-out walk off Brandon Maurer (5-2).

Jared Hughes (2-1) pitched one scoreless inning for the win as the Pirates beat the Padres for just the fourth time in the team's last 20 meetings at PNC Park.

REDS 3, NATIONALS 2

WASHINGTON - Eugenio Suarez hit a tiebreaking homer in the eighth inning, and the Reds stopped the Nationals' nine-game home winning streak.

Suarez went 3 for 4 with two RBIs to help the Reds snap a three-game skid and improve to 4-0 against Washington this year, clinching the season series.

With the score knotted at 2, Suarez drove an 0-2 pitch from Casey Janssen (0-2) just inside the left-field foul pole.

Manny Parra (1-1) worked the seventh and Aroldis Chapman got three outs for his 17th save. One of Chapman's fastballs was clocked at 103 mph.

Danny Espinosa homered for the Nationals, who had won 12 of 15 overall.