PHILADELPHIA -- Jerome Williams continued his strong stretch since arriving in Philadelphia, picking up his second win in three starts, as the Phillies beat the St. Louis Cardinals 7-1 Sunday afternoon.

A day after using all seven relievers in a 12-inning loss to the Cardinals, Williams gave his bullpen a much-needed day of rest, going eight innings while giving up just the one run, allowing five hits while striking out five and walking three.

The Phillies built up a 5-0 lead over the first three innings, with production coming throughout the lineup. All five runs were scored by different players, with four different batters picking up RBIs while one came in to score on a wild pitch by St. Louis starter Justin Masterson.

Phillies shortstop Jimmy Rollins added a two-run home run, his 16th of the season, against reliever Nick Greenwood in the eighth inning to cap off the scoring.

Yankees 7, White Sox 4 (10 innings)

NEW YORK -- Pinch hitter Brian McCann hit a three-run home run with two outs in the bottom of the 10th inning and New York completed a three-game sweep.

Five weeks after his bloop single beat the Cincinnati Reds in the ninth, McCann batted for catcher Francisco Cervelli after designated hitter Carlos Beltran doubled and third baseman Chase Headley was walked intentionally by Jake Petricka.

McCann ended a seven-pitch at-bat by driving a full-count slider over the right field wall for his 15th home run. Upon reaching the plate, he was mobbed by his teammates and given a Gatorade shower by left fielder Brett Gardner before reaching the dugout.

Reds, 5, Braves 3

CINCINNATI -- Alfredo Simon pitched seven strong innings and third baseman Todd Frazier hit his 22nd homer, lifting Cincinnati.

It is the first two-game winning streak for Cincinnati since Aug. 5-6. The Reds are 12-24 since the All-Star break.

Atlanta failed to gain ground in the National League Wild Card race after going 3-for-21 with runners in scoring position combined over the final three games of the series.

Indians 3, Astros 1

CLEVELAND -- Trevor Bauer pitched six scoreless innings and shortstop Jose Ramirez had three hits to lead Cleveland.

The right-hander Bauer struck out nine, walked three and gave up four hits in becoming the third consecutive Cleveland starter to pitch well in the three-game series in which the Indians won two of the three games.

Right-hander Cody Allen pitched the ninth inning to pick up his 17th save. Allen gave up two singles and a walk as the Astros loaded the bases with two outs. But Allen struck out designated hitter Dexter Fowler to end the game.