NEW YORK Joba Chamberlain struck out a career-high nine, Alex Rodriguez had another key hit and the New York Yankees beat San Diego 2-1 on Thursday for their seventh straight victory.
The Yankees set up both their runs with stolen bases and cut down Adrian Gonzalez twice at home plate in the first four innings.
Mariano Rivera struck out the side in the ninth for his 20th save in 20 chances, completing New York's second consecutive three-game sweep against a National League team.
The Padres have dropped five of six.
New York extended its longest winning streak of the season and improved to seven games above .500 for the first time this season.
Rodriguez, who homered in the previous four games, drove in the tiebreaking run in the sixth with a single off Josh Banks (2-1). Derek Jeter had singled, stole second and moved up on a grounder.
Chamberlain allowed one run in 5 2/3 innings but has yet to earn a decision in four career starts. Jose Veras (2-0) relieved Chamberlain and pitched 1 1/3 innings to earn the win.
"Look, without guys like Joba, you can't win championships," Rodriguez said. "That's just the bottom line. We need him in the starting rotation."
TWINS 9, NATIONALS 3: At Minneapolis, Michael Cuddyer hit a two-run triple and reached base all four times up and Glen Perkins won for the first time in five starts as Minnesota completed a three-game sweep. Cuddyer walked twice, doubled, scored twice and drove in two. Brian Buscher had two hits and two RBIs, giving the Twins their sixth win in eight games after a season-worst six-game losing streak. They moved above the .500 mark for the first time since June 6.
BREWERS 8, BLUE JAYS 7: At Milwaukee, Dave Bush took a no-hit bid into the eighth inning before it was broken up by the player he was traded for, and Milwaukee barely held on. Lyle Overbay opened the eighth by slicing a triple just beyond the reach of diving left fielder Ryan Braun. Bush (3-7) was dealt to the Brewers in 2005 for Overbay. Joe Inglett hit a two-out grand slam that highlighted the Blue Jays' six-run rally in the ninth.
RANGERS 5, BRAVES 4: At Arlington, Texas, Michael Young broke out of a slump with a game-ending RBI single and rookie Brandon Boggs hit a three-run homer for Texas. Atlanta's Chipper Jones went 0-for-4 as his major league-leading batting average (.394) fell below .400 for the first time since April 12.
WHITE SOX 13, PIRATES 8: At Chicago, Jermaine Dye hit two homers, including a seventh-inning grand slam, and drove in six runs as Chicago finished a three-game sweep. Orlando Cabrera homered and had four RBIs as the White Sox rallied from a 6-0 deficit. Gavin Floyd (8-3) won his fourth straight decision, giving up six hits and seven runs one earned in 5 2/3 innings.
ROYALS 4, CARDINALS 1: At St. Louis, Zack Greinke and two relievers combined on a two-hitter, and Kansas City completed its first three-game sweep of St. Louis since 2001. Mark Teahen missed the cycle by a double and had three RBIs for the Royals, who are 7-2 in interleague play despite being in last place in the AL Central at 31-42. Greinke (6-4) struck out seven, walked one and worked seven or more innings for the ninth time in 15 starts. Joakim Soria worked his third straight 1-2-3 ninth for his 18th save in 19 chances.
DIAMONDBACKS 2, ATHLETICS 1: At Phoenix, Justin Upton hit a tiebreaking homer in the eighth inning for Arizona. Tony Pena (1-1) pitched a scoreless eighth for the win. Brandon Lyon got three outs for his 14th straight save.
RAYS 8, CUBS 3: At St. Petersburg, Fla., Carl Crawford hit his second career grand slam in a seven-run seventh inning that carried Tampa Bay to a victory over Chicago and a three-game sweep of the Cubs. Grant Balfour (2-0) pitched 1 1/3 scoreless innings for the win as Tampa Bay set a club record for victories (43) before the All-Star break and climbed 14 games over .500 (43-29) for the first time in team history.
ORIOLES 7, ASTROS 5: At Baltimore, Alex Cintron had three hits, including one of Baltimore's three home runs, and Houston had its losing streak extended to eight games. Ramon Hernandez and Aubrey Huff also connected for the Orioles, whose last three-game sweep of an interleague opponent came in June 2005 at home against Houston. Brian Burres (6-5) allowed three runs and seven hits in 5 2/3 innings for the Orioles.
ROCKIES 6, INDIANS 3: At Denver, Jorge De La Rosa struck out a career-high 10 and Willy Taveras had three hits to lead Colorado to a sweep of the three-game series. De La Rosa (2-3) allowed three runs and four hits in six innings. Indians starter Jeremy Sowers (0-2) gave up 10 hits and three earned runs in six innings. Jeff Baker homered for the third straight game for Colorado, which has won three straight and 11 of 15. Brian Fuentes pitched a scoreless ninth to earn his 13th save.
DODGERS 7, REDS 4: At Cincinnati, Matt Kemp hit a homer and a two-run double, and Eric Stults pitched into the seventh inning in his season debut to lead Los Angeles to the three-game sweep. Aaron Harang (3-10) became the NL's second 10-game loser, joining San Francisco's Barry Zito, who has lost 11. Stults (1-0), who was called up from Triple-A when Brad Penny went on the disabled list with a sore shoulder on Tuesday, took a shutout into the seventh, when an error opened the door for a four-run Reds' rally. Stults gave up six hits and struck out a career-high five.