KANSAS CITY, Mo. -- Mark Buehrle is trying to get back to pitching as well as he did the first three months of the season. He's getting closer with each start.
Buehrle improved to 3-1 in his last four starts after going 0-6 with two no-decisions in his previous eight outings. In his six-game losing skid over eight starts, he had an 8.93 ERA. In his past four starts, Buehrle has a 3.65 ERA.
Buehrle, who was 9-4 with a 3.22 ERA at the end of June, improved to 3-0 against the Royals this season and 15-6 in his career.
"He's still on the road back," White Sox manager Ozzie Guillen said. "I hope we see him perform the way he was before. Buehrle threw the ball good tonight. If he throws like that every game, he's going to win a lot more."
Buehrle (12-11) gave up three runs and nine hits in six innings, while walking one and striking out three.
"The results are there," Buehrle said. "I've gone out and give my team a chance to win and that's kind of what I've been shooting for. In my last four or five starts, I've been pretty pleased with what is happening out there."
Buehrle had just one clean inning, the second, but was backed by two double plays and struck out Mark Teahen in the third with one out and runners on the corners.
"I made that key pitch, got that double play or tried to get a strikeout to minimize the damage," Buehrle said. "Guys are going to get on base. I'm going to give up a lot of hits. I'm in the strike zone."
The White Sox scored two runs in the seventh to take a 4-3 lead. Sandy Alomar's sacrifice fly scored Brian Anderson, who opened the inning with a double. Tadahito Iguchi's double with two out scored Pablo Ozuna, who also doubled, with the go-ahead run. Iguchi's double was a fly ball to center that Joey Gathright, who was just inserted for defensive purposes, lost in the twilight.
"There's a certain point of the night when you lose the ball," Gathright said. "I knew where it was going, but I couldn't find it. We call it the twilight cover and you just can't see the ball that much."
That double allowed Buehrle to pick up the victory.
"We got big hits when we needed them," Buehrle said. "We got a little luck with that fly ball to center that should have been caught in the seventh that gave me a chance to get the win. As I've said before you need luck on your side and we had a lot today."
Crede extended his hitting streak to 10 games, which matches his season high, with a two-out, two-run single in the third to give the White Sox a 2-1 lead. Crede's single to left scored Alomar and Ozuna, who opened the inning with singles and moved up on Iguchi's sacrifice bunt.
The White Sox got an insurance run in the eighth when Ross Gload's single scored Paul Konerko, who led off the inning with a double.
The Royals took a 3-2 lead in the sixth. Ryan Shealy had a run-scoring double, while Teahen scored on Emil Brown's groundout.
Losing pitcher Odalis Perez (1-3) worked seven-plus innings, giving up five runs and 11 hits, while walking one and striking out six.
"He deserved better than that," Royals manager Buddy Bell said. "I thought he was outstanding. We had some balls in the outfield that were either bloopers, bounced over our heads or bounced in front of us."
While Buehrle had the good fortune, Perez struggled to get any breaks.
"It was just bad luck for me today," Perez said. "I should have given up only one run if we don't make those little mistakes that cost us the game. I'm not going to blame my teammates for that cause they are the ones when you're in a bad situation they come through and they help you to win a ballgame. I don't feel bad. I threw the ball the way I wanted."
Mike MacDougal, who was traded from the Royals to the White Sox on July 24, worked 1 2/3 scoreless innings after Buehrle was pulled. Bobby Jenks struck out the side in the ninth for his major league-leading 39th save in 41 opportunities.
- Chicago RF Jermaine Dye struck out all four times to snap his 12-game hitting streak. The four strikeouts matches a career high, the sixth of his career.
- Sweeney had three hits and is hitting .390 in his past 10 games.
- Teahen, who had two singles, has 27 multihit games since being recalled on June 3 from Triple-A Omaha.