PITTSBURGH — Matt Cain's mind drifted. He couldn't help it.
A year to the day after throwing the 22nd perfect game in baseball history, the San Francisco Giants ace didn't give up a hit through four innings on Thursday night against the Pittsburgh Pirates.
"I tried not to think about it but there was enough talk about it that I couldn't really tune out," Cain said.
A single by Pittsburgh's Garrett Jones leading off the bottom of the fifth rendered any discussion of Cain making history again moot, one of the few things that didn't go right for the Giants in a 10-0 romp.
Cain (5-3) struck out three and walked two over 62/3 innings.
"He had good command of all his pitches," San Francisco manager Bruce Bochy said. "He's in a good place right now with his delivery and command. I like where he's at."
Hunter Pence hit his 11th homer of the season, while Buster Posey, Gregor Blanco and Joaquin Arias had three hits apiece for San Francisco, which avoided a sweep by sending the Pirates to their worst loss of the year.
Not bad for a team missing injured stars Pablo Sandoval, Marco Scutaro and Angel Pagan, all of whom are on the disabled list.
"It's a great sign," Bochy said. "We're missing three big bats. You hope guys pick it up and they have the last couple of games. Blanco had a big game. Really, a lot of guys had big games."
Even if it wasn't required on a night Cain seemed to move past the inconsistent play that's dogged him over the first two months of the season.
The three-time All-Star has run hot and cold this season, getting off to a horrific start in April before going 4-0 in May. The Giants lost both of his starts this month, scoring all of one run in the process.
Given a healthy dose of support, Cain didn't let it go to waste.
"I am throwing the ball a whole lot better," he said. "I'm trying to eliminate that big inning. I had done a good job of that for some years now but I've kind of had trouble with it this year. It's a matter of putting it in the past and getting guys out."
Cardinals 2, Mets 1
At New York, Adam Wainwright became the first 10-game winner in the majors by throwing seven scoreless innings and sent Matt Harvey to his first loss of the season, leading the St. Louis Cardinals over the New York Mets in a classic pitching matchup.
Wainwright (10-3) retired his first 11 batters before David Wright's single, and allowed four hits with six strikeouts and two walks. He matched his career best by winning his fifth straight start, dropped his ERA to 2.18 and got his 1,000th career strikeout.
Harvey (5-1) had been unbeaten in 14 starts since Sept. 12 and he pitched well enough to win, giving up one run and five hits in seven innings with seven strikeouts and a walk.
Cubs 6, Reds 5, 14 innings
At Chicago, pinch-hitter Julio Borbon singled home the winning run with two outs in the 14th inning and Chicago ended Cincinnati's record 12-game winning streak at Wrigley Field.
Nationals 5, Rockies 4
At Denver, Ryan Zimmerman homered, doubled and drove in three runs, Ian Desmond got four hits and Washington beat the depleted Colorado Rockies.
The Rockies lost four players and a coach, as well as the rubber match of the three-game series.
Colorado outfielders Carlos Gonzalez and Dexter Fowler were hurt early and star shortstop Troy Tulowitzki left with a rib injury in the eighth. While the Rockies said X-rays on Gonzalez and Fowler were negative and listed both players as day to day, Tulowitzki's injury could be more serious.
Athletics 3, Yankees 2, 18 innings
At Oakland, Calif., Nate Freiman singled home the winning run in the 18th inning against Mariano Rivera, lifting the Oakland Athletics to a victory over the New York Yankees for a three-game sweep.
As a day game after a night game turned into a night game after a day game, John Jaso singled off Preston Claiborne (0-1) to start the decisive rally and went to third on Seth Smith's soft single to shallow left field against Rivera.
Baseball's career saves leader issued only the 39th intentional walk of his 19-year career to Jed Lowrie before Freiman ended the 5-hour, 35-minute game.
The AL West-leading A's (41-27) won their 11th in a row at home.
Winning pitcher Jesse Chavez (1-0) struck out seven in 52/3 scoreless innings.
Orioles 5, Red Sox 4, 13 innings
At Baltimore, Chris Davis singled home the tiebreaking run with two outs in the 13th inning, giving the Orioles an exhausting victory over the Red Sox in the opener of a four-game series between AL East contenders.
Danny Valencia homered for the Orioles, who moved into second place and within 21/2; games of Boston. Baltimore won despite leaving 16 on base and going 4 for 14 with runners in scoring position.
Royals 10, Rays 1
At St. Petersburg, Fla., Elliot Johnson had a three three-run homer for his second hit of an eight-run sixth inning, leading the surging Kansas City Royals to a victory.
Blue Jays 3, Rangers 1
At Arlington, Texas, Edwin Encarnacion hit a tiebreaking two-run double in the eighth inning and the Blue Jays handed the Rangers their third straight loss.
The slumping Rangers wasted another solid outing by Yu Darvish, who has made five consecutive starts without a victory.
Phillies 3, Twins 2
At Minneapolis, Cliff Lee allowed two runs in seven strong innings, Ben Revere had four hits and scored the go-ahead run, and the Phillies rallied to beat the Twins and snap a five-game losing streak.
Lee (8-2) gave up only one hit and faced the minimum number of batters through 61/3 innings before Joe Mauer walked.