John Danks threw 7 1/3 innings and got a big lift from reliever Scott Linebrink, while A.J. Pierzynski and Scott Podsednik had three hits apiece to lead the White Sox over the Kansas City Royals 5-0, their seventh straight victory.
Greinke (10-4) saw his major league-best ERA go from 1.95 to 2.00 after giving up four runs -- two earned -- and nine hits in six innings. He walked one and struck out six but the nine hits tied for the most he's allowed all season and made him 2-1 in three decisions against Chicago.
"He's still a good pitcher, he still knows what he's doing, he's still throwing 96, 97 miles per hour," Pierzynski said. "We just try to battle and get good pitches and don't miss them."
The key to solving Greinke may be holding back on inviting pitches that only flirt with the strike zone.
"We made good decisions and tried to be aggressive," Pierzynski said. "He's so good at throwing balls just out of the strike zone. That's when it comes down to making good decisions."
On opening day, Greinke held the White Sox to three hits in six shutout innings. The next time, he shut them out on six hits. On May 31, he got a no-decision after giving up four runs in seven innings.
This time, he got the loss.
"Podsednik and Pierzynski, I just can't get those two out," he said. "They hit everything. It happens every time. Pierzynski was cheating for a first pitch fastball and got it. If I'd thrown him anything else, he probably would have taken it."
Podsednik is hitting .533 for his career against Greinke and Pierzynski is hitting .432.
Chicago has won five straight over the Royals, who have lost seven of nine and scored just three runs in their last four games. The victory put the White Sox (42-38) a season-best four games over .500 and was their 15th win in 19 road games.
"I think we're playing really well right now," Danks said. "We don't want to get ahead of ourselves. there's still a lot of baseball to be played. But over this past week we've played up to our capabilities. We've been saying all along we're better than what we've been playing like."
Danks (7-6) gave up five hits while striking out seven and not allowing a walk. He left with one out in the seventh after the Royals loaded the bases on two singles and shortstop Jayson Nix's error. Linebrink came in and got a double play grounder from Alberto Callaspo, whose error at second base led to two unearned runs in the third. Linebrink got his second save.
Callaspo, for the second time in three days, let a two-out routine grounder scoot under his glove that resulted in unearned runs. Jim Thome hit what should have been an easy out right at the second baseman, who has 10 errors, but the ball rolled into center field as Podsednik scored from second. Paul Konerko followed with an RBI double that put the White Sox up 3-0.
"The error on Thome obviously hurt," Royals manager Trey Hillman said. "We have him out if we make the play."
When Callaspo made a play on Chris Getz's hot grounder the next inning, the sellout crowd gave him a loud, derisive cheer.
The Royals have scored the fewest runs in the league.
"We've got one through six [in the lineup] with guys who have some sort of history, but they are not living up to that history," Hillman said.
Kansas City INF Willie Bloomquist was a late scratch when he had to leave the park for an undisclosed family emergency. ... Chicago OF Carlos Quentin, on the DL for more than a month with a painful foot condition, left the team for a rehab assignment at Triple-A Charlotte. The White Sox are not sure when he'll return. ... The game was the eighth sellout of the season and the crowd of 39,026 was the largest in Kauffman Stadium since opening day 2007 against the Red Sox. ... The Royals are hoping to get 3B Alex Gordon back shortly after the All-Star break. He played only seven games before going on the DL with a hip injury.