ATLANTA -- Rookie pitcher Jesse Hahn allowed only three hits over six strong innings to pace San Diego against Atlanta.

Hahn, recalled on Friday morning, kept the Atlanta hitters off-balance by mixing his fastball with an effective curve ball. He allowed one run, struck out four and walked three in improving to 6-2.

The Padres stretched their winning streak to three games by scoring in four of the first five innings. Atlanta starter Alex Wood (7-8) was shaky from the start, allowing five runs (four earned) on a season-high 12 hits in five innings.

White Sox 9, Twins 5

MINNEAPOLIS -- Chicago had a three-run lead three batters into the game, and the White Sox ran away from Minnesota.

The Twins' decimated bullpen badly needed an extended outing from starter Kevin Correia, but Chicago had different plans, jumping on him for three runs in the first and two runs in the third and fourth innings, driving the right-hander from the game after four innings.

Chicago right fielder Dayan Viciedo tied a career high with four hits, including his 20th double of the year. All nine starters reached base, and six had multi-hit games.

Rangers 4, A's 1

ARLINGTON, Texas -- Texas right-hander Jerome Williams limited Oakland to one run over six innings.

Williams (1-4) gave up five hits while striking out four and walking none as a fill-in in Texas' injury-riddled starting rotation. Rangers right-hander Neftali Feliz recorded his first save in more than two years by working around trouble in the bottom of the ninth.

Adrian Beltre went 2-for-4 with an RBI in the Rangers' two-run sixth.

Marlins 2, Houston 0

HOUSTON -- Brad Hand carried a shutout into the eighth inning of his fifth start since returning to the rotation, carrying Miami past Houston.

Hand (2-2) allowed three hits and two walks while striking out four before departing with one out in the eighth after Astros catcher Jason Castro stroked a double to right field. Right-hander Bryan Morris preserved the shutout by inducing Robbie Grossman to fly out before fanning pinch hitter Jon Singleton.

The Astros, who were shut out at home for the sixth time this season, went down in order against Marlins closer Steve Cishek in the ninth.

Mets 3, Brewers 2

MILWAUKEE -- Lucas Duda hit a two-run homer in the ninth inning as New York rallied to beat Milwaukee.

All three Mets runs came off Brewers closer Francisco Rodriguez (4-4), who has 29 saves this season but a 4.50 ERA in six July appearances. He allowed a leadoff double to Daniel Murphy, who scored on a single by David Wright.

That brought up Duda, who smacked a first-pitch fastball to right for his 17th home run of the year.

Royals 6, Indians 4

KANSAS CITY, Mo. -- Billy Butler crushed a two-run pinch-hit homer in the eighth inning to lift Kansas City over Cleveland.

After Salvador Perez singled for his third hit, John Axford was summoned from the bullpen to replace Nick Hagadone. Butler drove Axford's second pitch for his fourth home run to break a 4-4 tie. It was his second career pinch-hit home run.

Aaron Crow protected the lead in the ninth for his second save, while Kelvin Herrera (3-4) claimed the victory. Carlos Carrasco (3-4) took the loss.

Rockies 8, Pirates 1

DENVER -- Colorado broke open a close game against Pittsburgh with a seven-run seventh inning, including a two-run homer from Carlos Gonzalez.