Billy Butler had three hits and three RBI as the Kansas City Royals defeated the Minnesota Twins, 10-5, in the middle test of a three-game series at Target Field.

Alex Gordon and Salvador Perez added two RBI apiece for the Royals, who have won three straight and four of their last five.

Luke Hochevar (8-13) earned the win despite allowing five runs on six hits and four walks over five innings. The victory was his first since July 31, snapping a streak of seven straight starts (0-4) without a victory.

"I wanted to get him over that hump," Royals manager Ned Yost said about Hochevar. "He was working hard out there, maybe a little too hard, but he was trying with everything he had to get over that hump. I was bound and determined to give him every opportunity to do it."

P.J. Walters (2-4) surrendered six runs on seven hits and two walks through four-plus innings to take the loss.

Jamey Carroll knocked in three runs, while Denard Span had three hits and two runs scored for Minnesota, which dropped its second straight.

Minnesota opened the scoring in the bottom of the first inning when Span, who was activated off the 15-day disabled list prior to the game, led off the frame with a triple and came home two batters later on Josh Willingham's single to left field.

The Twins added to their lead in the third inning as Span hit a leadoff single and came home on three straight one-out walks by Willingham, Justin Morneau and Ryan Doumit. Carroll followed with a sacrifice fly to center field to plate Willingham for a 3-0 advantage.

Kansas City was able to get on the board in the fourth with Perez's solo homer to left-center field.

The Royals then took the lead in the fifth inning after loading the bases with no outs on an Eric Hosmer walk and singles by Johnny Giavotella and David Lough.

Alcides Escobar and Gordon brought home Hosmer and Giavotella, respectively, with a pair of singles before Butler plated Lough and Escobar with a base hit to left field, knocking Walters out of the game.

"I felt fine tonight. It's just I went in, walked the first batter and put myself in trouble and it comes back to bite you," Walters said.

Anthony Swarzak entered next and retired the first two batters he faced, but allowed a run-scoring single by Lorenzo Cain to put Kansas City on top, 6-3.

Minnesota, though, answered with a pair of runs in the bottom of the fifth with Carroll's two-run single after Morneau walked with two outs and moved to third on a Doumit double to make it a one-run game.

But Kansas City pulled away in the eighth inning thanks to several defensive gaffes by the Twins.

Hosmer opened the inning with a single and moved to second when Doumit dropped a fly ball in deep left field off the bat off Giavotella. Two batters later, Escobar lined a base hit to left that Doumit had bounce off his glove.

Doumit recovered the ball and threw home attempting to get Hosmer as he rounded third, but his throw sailed wide of the plate, allowing Hosmer to score on Doumit's second error of the play and his third of the inning.

Tyler Robertson then replaced Casey Fien on the mound and induced a grounder to second by Gordon. Alexi Casilla opted to throw home to try and get Giavotella, but his throw was off the mark.

Kyle Waldrop entered next and surrendered a pair of RBI singles by Butler and Perez to give the Royals a 10-5 lead.

Kelvin Herrera left a man on second in the bottom of the eighth and Francisley Bueno worked a scoreless ninth to close out the game.

Game Notes

Twins catcher Joe Mauer missed his second straight game with back spasms ... Carroll extended his hit streak to a career-high 10 games ... Hochevar improved to 5-5 in 16 career appearances (15 starts) against Minnesota ... The Twins lead the season series between the teams, 10-7 ... Minnesota hit 2-for-8 with runners in scoring position and left eight men on base ... The Royals went 8-for-16 with runners in scoring position and stranded nine.