ST. PETERSBURG, Fla. -- The New York Yankees got strong pitching from Hiroki Kuroda and strung together four consecutive hits in the fifth inning to beat the Tampa Bay Rays 4-2 and win the three-game series at Tropicana Field.

Yankees closer David Robertson got a 1-2-3 ninth to convert his 21st consecutive save opportunity, extending the longest streak in the majors, and Kuroda retired 17 in a row on the way to his eighth win of the season.

The Rays had a chance to tie the game in the seventh inning, as outfielder Mark Joyce led off with a double, advanced on a wild pitch and scored on third baseman Evan Longoria's RBI single to left. Longoria was at third with two outs, representing the tying run, but reliever Shawn Kelley came in and struck out pinch-hitter Brandon Guyer to end the threat.

The Yankees got an insurance run in the eighth inning when first baseman Mark Teixeira crushed a solo home run to right-center field off reliever Joel Peralta. Tampa Bay had gone 12 games allowing three runs or less, matching the longest streak by any team in the American League since the 1991 Blue Jays.

Cardinals 7, Padres 6

ST. LOUIS -- After a late night and a tough loss Saturday, St. Louis' bats answered the early wakeup call.

Jumping out to a 5-0 lead before they made the second inning's first out, the Cardinals maintained their grip on the National League's top wild card spot with the win.

Cardinals starter Adam Wainwright tied Cincinnati's Johnny Cueto for the league lead in wins, going seven innings. Wainwright allowed seven hits and four runs, three earned, with a walk and five strikeouts.

Cubs 2, Mets 1

NEW YORK -- Shortstop Starlin Castro homered on the first pitch of the ninth inning to snap a tie and lift Chicago to the win.

Castro's homer off Mets right-hander Jenrry Mejia landed just beyond the right field fence.

Castro and right fielder Ryan Sweeney each had two hits while third baseman Luis Valbuena had an RBI single in the fourth for the Cubs, who snapped a three-game losing streak.

Marlins 10, Diamondbacks 3

MIAMI -- Backed by Giancarlo Stanton's three-run homer and four RBIs, Miami reached the .500 mark after beating Arizona.

Stanton, the right fielder, leads the National League with 32 home runs and 88 RBIs. His RBI total represents a career high.

Another Marlins hitting star was left fielder Christian Yelich, who had two doubles, a single and a steal.

The win went to right-hander Tom Koehler, who got past a rough start to allow just two runs in six innings. Right-hander Josh Collmenter took the loss, allowing five runs -- including two homers -- in four innings.

Orioles 4, Indians 1

CLEVELAND -- Steve Pearce and Jonathan Schoop homered and Kevin Gausman combined with three relievers on a two-hitter for Baltimore.

The Orioles, who have not lost three games in a row since a four-game losing streak that ended on May 30, were held to one run in losing the first two games of the series, but they rallied to win the last game.

The win went to right-hander Gausman, who pitched six innings and held the Indians to one run on two hits. Left-hander Zach Britton pitched the ninth to pick up his 26th save.

Mariners 8, Tigers 1

DETROIT -- Chris Young tossed six scoreless innings and Kyle Seager drove in three runs as Seattle cruised to the victory.

Young allowed four hits and struck out four while winning his fourth consecutive decision. Second baseman Robinson Cano scored three runs and right fielder Chris Denorfia added three hits and an RBI for the Mariners, who took two of three games in the series.

Seattle manager Lloyd McClendon was ejected for the second straight game. Third base umpire Tony Randazzo, who also tossed McClendon on Saturday, ejected him in the seventh after the Mariners lost an appeal on a check swing.