KANSAS CITY, Mo. -- Jarrod Dyson used his bat, speed and arm to help the Kansas City Royals win on Saturday.
Dyson went 3-for-3 and drove in the winning run with two out in the eighth as the Royals rallied to defeat the Oakland Athletics, 4-3.
Dyson's infield single with the bases loaded scored Alcides Escobar, who was running for Miguel Tejada.
After Ryan Cook retired the first two batters in the eighth, Tejada reached base on an error by shortstop Adam Rosales. The next two batters walked, setting up Dyson's game-winning single.
"I was just trying to find a hole, didn't want to hit it deep," Dyson said. "I wanted to get a pitch to handle. I knew when it got over the pitcher that he didn't have a play at second and I was pretty sure he wasn't going to get me at first."
Without Rosales' error on Tejada's routine grounder, Dyson never comes to the plate.
"They did us a favor," Dyson said. "Any way we can get a win, we'll take it."
The A's pitched around Mike Moustakas, who hit a home run in the fourth, walking him on four pitches. Then Elliot Johnson coaxed a walk from Cook to set up Dyson's winning hit.
"I don't think he wanted to pitch to Moose and it carried over to my at-bat," Johnson said. "And then Mr. Zoombiya (Dyson's twitter handle) had a great day."
Dyson also walked, doubled, scored a run and stole two bases.
"Its nice to have a good three-hit game," Dyson said. "I told the guys I was going to get three. That's my job, to get on base."
Dyson also threw out Eric Sogard for a double play in the seventh when he attempted to take third after Coco Crisp had flied out to center.
"Originally, when the ball was hit, I'm thinking, 'Yeah,'" A's manager Bob Melvin said. "Then the guy makes a heckuva throw and gets him by an eyelash.
"That's one you could probably pick apart. If he does make it, you're saying it's a great play. If he doesn't, you're saying he shouldn't do it."
Aaron Crow (6-3) picked up the victory, pitching a scoreless eighth. Greg Holland pitched a spotless ninth to log his 20th save.
A's right-hander Jarrod Parker, who started the season 1-5 with a 7.34 ERA in his first seven starts, is 5-1 with a 2.49 ERA in his last 11 starts.
However, Parker had to settle for a no-decision in this one, leaving after 6 1/3 innings, allowing three runs, two earned, on five hits and three walks, while striking out four.
Parker, who had not pitched since June 29 when he left in the fourth inning against the Cardinals because of a right hamstring injury, gave up a single to Johnson, who snapped a 0-for-21 skid, and walked Dyson with one out in the seventh.
Jerry Blevins replaced Parker and walked Alex Gordon, his third free pass of the game, to load the bases. Eric Hosmer's sacrifice fly scored Johnson, making it 3-3.
"I'd be lying to you if I told you it didn't affect my stuff a little bit," Parker said of the tender hamstring. "It's not really an excuse, just go out there and battle and that's what I did. ... I'm semi-happy with the health side of it."
Melvin was not happy with any aspect of the A's play. Oakland pitchers walked six, the A's committed three errors, allowed two unearned runs and stranded runners at third base in the second and third innings.
"That was a very poor game," Melvin said. "The way we started and the way we ended, a very bad game for us. I wish it was one thing."
Josh Donaldson hit his 15th home run of the season to tie for the team lead and give the A's a 3-2 lead in the sixth.
The A's jumped out to a 2-0 lead with single runs in the second and third innings.
Donaldson walked with one out in the second, stopped at second on Seth Smith's single and scored on Josh Reddick's single to center. Smith and Reddick moved up a base on Dyson's errant throw home, but were stranded.
Donaldson's run-producing fly-ball single dropped into shallow right field and barely fair to score John Jaso in the third inning.
It was Donaldson's 100th hit of the season, making him the 14th Oakland player to reach that mark before the All-Star break and the first since Miguel Tejada in 2002.
The Royals got a run back in the third, when Dyson led off with a single to right and stole second. Dyson moved to third with one out on Parker's throwing error on a pickoff attempt and scored on Billy Butler's ground out.
Moustakas' sixth home run with two out in the fourth tied the score, 2-2.
Royals right-hander Ervin Santana gave up three runs on seven hits and two walks in seven innings for his fourth consecutive no-decision.
NOTES: Alex Gordon, who passed medical tests for a possible concussion after banging into the fence Wednesday, returned to the Royals' lineup on Saturday after sitting out two games. ... Alcides Escobar, who is 2-for-16 on this homestand to drop his average to .247, and 2B Johnny Giavotella, who is hitless in his last 14 at-bats, were not in the Royals' starting lineup Saturday. ... SS Jed Lowrie was out of the A's lineup after fouling a ball off the inside of his right calf on Friday night. He pinch hit in the ninth and struck out. ... The A's dropped to 16-19 in day games.