SAN FRANCISCO - San Francisco's Matt Cain pitched the 22nd perfect game in major league history and first for the Giants, striking out a career-high 14 batters and getting help from two running catches to beat the Houston Astros 10-0 on Wednesday night.
Cain's 125-pitch masterpiece featured a pair of late great plays by corner outfielders Melky Cabrera and Gregor Blanco, and he got pinch-hitter Jason Castro on a grounder to third for the 27th and final out.
Cain (8-2) threw 86 of his pitches for strikes and faced four 3-2 counts. He threw the most pitches in any perfect game.
It was the second perfect game of the season and the fifth no-hitter — including three in June. The Astros were no-hit for the fifth time and first since Carlos Zambrano did so for the Cubs on Sept. 14, 2008.
Cabrera, Brandon Belt and Blanco all hit two-run homers for the Giants.
Houston starter J.A. Happ (4-7) allowed eight runs and 11 hits in 3 1-3 innings.
NATIONALS 6, BLUE JAYS 2
TORONTO (AP) — Stephen Strasburg won his fifth straight start, Tyler Moore hit the first two home runs of his career and Washington finished a three-game sweep of Toronto.
Ian Desmond also connected as Washington completed the first undefeated six-game road trip since the franchise relocated from Montreal. The NL East-leading Nationals, who also swept Boston, outscored the Red Sox and Blue Jays 31-16.
Recalled from Triple-A Syracuse last week, Moore started in place of Adam LaRoche, who was out after fouling a ball off his right foot on Tuesday.
Moore went 3 for 4 with five RBIs.
Jose Bautista hit his 19th home run for Toronto against Strasburg (8-1), but the Blue Jays (31-32) lost for the sixth time in seven games and fell below .500 for the first time this season.
Blue Jays starter Kyle Drabek (4-7) was forced to leave after suffering an apparent injury. Drabek lost for the third time in four starts, allowing four runs and seven hits in 4 1-3 innings.
ORIOLES 7, PIRATES 1
BALTIMORE (AP) — Substitute starter Jake Arrieta tied a career high with nine strikeouts over seven innings, Wilson Betemit had a season-high three hits and drove in three runs, and Baltimore beat Pittsburgh for its fourth straight victory.
Chris Davis hit a broken-bat homer and had three RBIs for the Orioles, whose four-game home winning streak is a season high. Baltimore clinched its third successive series win.
Pittsburgh, which won five consecutive series before coming to Baltimore, has lost back-to-back games for the first time since May 22-23.
Arrieta (3-8) was dominant in ending a six-game losing streak. He gave up one run and seven hits. Arrieta filled in for scheduled starter Brian Matusz, who fouled a baseball off his nose Tuesday during bunting practice.
Betemit went 3 for 3 and gave the Orioles a 5-0 lead in the sixth inning against Kevin Correia (2-6) with his eighth homer.
REDS 5, INDIANS 3
CINCINNATI (AP) — Brandon Phillips had another strong game against his former team, hitting a two-run homer and driving in three runs as Cincinnati topped Cleveland.
Phillips' two-run shot in the seventh inning made it 58 straight games with at least one homer at Great American Ball Park since July 29, the longest active streak in the majors.
Phillips also had an RBI single off Derek Lowe (7-5) and three hits overall against the team that traded him at the start of the 2006 season. Phillips is a .347 career hitter against Cleveland.
Mat Latos (5-2) pitched seven innings in place of Mike Leake, one of several Reds hit hard by a stomach virus. Aroldis Chapman pitched the ninth for his seventh save in nine chances, giving up a solo homer by Jose Lopez with two outs.
Michael Brantley extended his hitting streak to 20 games, matching the longest in the majors this season.
METS 9, RAYS 1
ST. PETERSBURG, Fla. (AP) — R.A. Dickey allowed only an infield single during his second career one-hitter and broke the New York Mets' record for consecutive scoreless innings in a victory over Tampa Bay.
Dickey (10-1) became the first 10-game winner in the major leagues and ran his career-best shutout streak to 32 2-3 innings before yielding an unearned run in the ninth. That topped the previous club mark of 31 2-3 scoreless innings set by Jerry Koosman in 1973.
B.J. Upton's high bouncer to third base in the first inning was the lone hit off Dickey, who set a career best with 12 strikeouts and didn't walk a batter. The 37-year-old knuckleballer permitted only one other baserunner, on a throwing error by third baseman David Wright in the ninth.
Dickey outpitched AL wins leader David Price (8-4). In his last five outings, the right-hander has struck out 50 and walked three. He is 8-0 in his past 10 starts.
According to STATS LLC, the matchup was only the second since 1921 to feature the AL and NL wins leaders during the regular season.
YANKEES 3, BRAVES 2
ATLANTA (AP) — Curtis Granderson hit a go-ahead two-run homer in the sixth inning, and the streaking New York Yankees completed their second straight three-game sweep with a win over Atlanta.
Hiroki Kuroda (6-6) gave up two runs in six innings and set a season high with eight strikeouts. He stranded runners in scoring position in the second, third and fourth innings before giving up Brian McCann's two-run shot in the fifth. Granderson answered an inning later with his 19th homer.
Alex Rodriguez had an RBI single in the first inning for the Yankees, who have surged into first place in the AL East with sweeps of the Mets and Braves.
Rafael Soriano gave up a single to Chipper Jones with two outs in the ninth before capping his 11th save by getting Jason Heyward to hit a popup to second base.
The Braves had runners in scoring position in six innings and went 2 for 13 in that situation.
Tim Hudson (4-3) gave up the lead before he could record an out in the sixth. He gave up three runs and six hits with no walks and eight strikeouts in six innings.
RED SOX 10, MARLINS 2
MIAMI (AP) — Felix Doubront allowed three hits while pitching a career-high seven innings, and Boston beat reeling Miami.
Doubront (7-3), coming off the worst start of his career, retired 16 in a row and took a no-hitter into the sixth inning. He struck out nine and allowed two runs. The left-hander hadn't pitched more than 6 1-3 innings in his 15 previous career starts.
David Ortiz hit his 15th homer and drove in three runs. Adrian Gonzalez hit a pair of RBI singles, and Scott Podsednik scored twice, drove in a run and had two hits to hike his average to .373.
The Red Sox took two of three from the Marlins, who went 1-8 on their homestand and were outscored 56-17.
Doubront had a 4-0 lead before the Marlins' first hit — a homer by Jose Reyes.
Ricky Nolasco (6-5) allowed four runs, three earned, in six innings.
RANGERS 1, DIAMONDBACKS 0
ARLINGTON, Texas (AP) — Craig Gentry hit a two-out RBI single in the eighth inning, and Matt Harrison combined with two relievers on a six-hitter as Texas beat Arizona.
Mike Napoli drew a leadoff walk in the eighth off rookie left-hander Wade Miley (7-3) before a sacrifice bunt by Yorvit Torrealba. After pinch-hitter Nelson Cruz struck out, Gentry, the No. 9 batter hitting .340, hit a hard one-hopper over the glove of third baseman Ryan Roberts into left field.
Mike Adams (1-2) retired the only two batters he faced after replacing Harrison, who has pitched 16 1-3 consecutive scoreless innings. Joe Nathan worked a perfect ninth for his 13th save in 14 chances.
Texas has won seven straight against the Diamondbacks, who were shut out for only the second time this season. The Rangers have won 28 of 40 games against National League opponents.
CARDINALS 1, WHITE SOX 0
ST. LOUIS (AP) — Lance Lynn struck out a career-high 12 to stay tied for the major league lead in wins and Carlos Beltran hit his NL-best 19th home run Wednesday night, sending the St. Louis Cardinals to a 1-0 victory over the White Sox that ended Chicago's eight-game road winning streak.
Beltran homered in the third inning off Jake Peavy (6-2) and had three of the four hits for the Cardinals, who have scored only seven runs in the last five games and totalled a single run for the third straight game. They have won just five of 14.
Lynn (10-2) allowed three hits in 7 1-3 innings and joined the Mets' R.A. Dickey as the only 10-game winners in the majors.
PHILLIES 9, TWINS 8
MINNEAPOLIS (AP) — Jim Thome drove in four runs against his former team, including a long homer, and Philadelphia hung on for a win over Minnesota.
John Mayberry also had four RBIs, including a three-run home run in the first inning to give Cole Hamels (9-3) a six-run lead he barely held. Jonathan Papelbon got the last four outs for his 17th save in as many attempts.
Hunter Pence and Carlos Ruiz both had three hits and scored two runs, helping the Phillies — who have been last in the NL East since May 5 — win for the second time in 11 games.
Denard Span had three hits, Joe Mauer drove in two runs and Josh Willingham and Trevor Plouffe both homered for the Twins, who trailed 6-0 and 9-3. Papelbon ended their rally by striking out Mauer in a perfect ninth.
After three straight soft singles to start the game against P.J. Walters (2-2), Thome smacked one to right field to drive in two runs and prompt manager Ron Gardenhire to visit the mound. Walters wasn't able to get loose, the team announced, and left because of stiffness and pain in his shoulder.
TIGERS 8, CUBS 4
CHICAGO (AP) — Jhonny Peralta had three hits and two RBIs one night after he made two costly throwing errors, and Detroit rallied to beat the Chicago Cubs.
Brennan Boesch had four hits, including a solo homer, and made a diving catch in right field as the Tigers improved to 8-1 in their last nine games against the Cubs.
Boesch added his seventh homer in the seventh and an RBI single in the eighth.
Alfonso Soriano, Darwin Barney and Steve Clevenger had two hits apiece for the Cubs, who had won four straight home games.
Matt Garza (2-5) allowed five runs, three earned, and seven hits in six innings. The right-hander is 0-4 with a 5.26 ERA in his last seven starts.
Rick Porcello (4-4) gave up nine hits in five innings, but managed to earn his first victory since May 6 against the White Sox. The right-hander was 0-2 with a 5.17 ERA in his previous six starts.
ROYALS 4, BREWERS 3, 11 innings
KANSAS CITY, Mo. (AP) — Mike Moustakas walked with the bases loaded in the 11th inning, giving Kansas City a come-from-behind victory over Milwaukee.
Billy Butler singled to lead off the inning against Kameron Loe (2-2), and Eric Hosmer drew a walk before Jeff Francoeur ripped a single to left field.
Third base coach Eddie Rodriguez threw up the stop sign on the lumbering Butler, leaving the bases loaded for Moustakas, who walked on five pitches from Jose Veras to win it.
Tim Collins (3-0) worked around a walk in the 11th to earn the win for Kansas City, which came back from a 3-1 deficit with two outs in the ninth inning to force extra innings.
Alcides Escobar provided the damaging blow with a two-run triple off closer John Axford.
ATHLETICS 10, ROCKIES 8
DENVER (AP) — Brandon Inge hit a go-ahead, two-run double during a three-run ninth inning, and Oakland overcame a grand slam by Todd Helton and two homers by Michael Cuddyer to top Colorado.
The Rockies have lost seven straight and are 0-8 in interleague games this season.
With the A's trailing 8-7 heading into the ninth, Coco Crisp singled off closer Rafael Betancourt (1-2). Jemile Woods sacrificed Crisp to second and he stole third before scoring the tying run on Collin Cowgill's sacrifice fly.
Seth Smith, who had homered earlier, hit a two-out double. Josh Reddick, pinch-hitting for reliever Jerry Blevins (1-0), was walked intentionally, and Inge followed by lashing a double down the left field line.
Ryan Cook earned his second save in three chances.
Colorado's Marco Scutaro tied a career best with four hits. The teams combined for 23 hits, including six home runs.
PADRES 1, MARINERS 0
SEATTLE (AP) — Yonder Alonso homered in the seventh inning and Jason Marquis and three relievers combined on an eight-hitter as San Diego beat Seattle.
Alonso hit his second homer of the season — and seventh of his career — on the first pitch of the seventh inning from starter Hector Noesi.
Marquis (1-1) gave up six hits and four walks and struck out four over 6 1-3 innings. Huston Street pitched the ninth for his seventh save. The Mariners put at least one runner on base against Marquis in every inning.
Noesi (2-7) allowed one run and five hits in seven innings.
ANGELS 2, DODGERS 1
LOS ANGELES (AP) — Erick Aybar led off the ninth inning with his first home run of the season, Alberto Callaspo also went deep and the Los Angeles Angels beat the Dodgers in the rubber game of the season's first Freeway Series.
Aybar jumped on a 1-1 pitch from closer Kenley Jansen (4-2) and deposited it into the pavilion seats in right-centre. LaTroy Hawkins (1-1) earned his first victory with the Angels after pitching a hitless eighth in relief of C.J. Wilson.
Ernesto Frieri got three outs for his sixth save in six chances, retiring pinch-hitter and former Angel Bobby Abreu on a comebacker with two runners in scoring position.