CHICAGO (AP) -- Kansas City manager Ned Yost thought it was a hit. Greg Holland was preparing for a tie game. David Lough had other ideas.
Lough made a terrific diving catch to rob Jeff Keppinger of a tying RBI single in the ninth inning, helping Wade Davis and the Royals beat Chris Sale and the Chicago White Sox 1-0 Saturday night for their fifth consecutive victory.
Lough's grab in right was part of a terrific defensive performance for Kansas City. Center fielder Lorenzo Cain and shortstop Alcides Escobar also chipped in with two nice plays apiece.
''We play great defense every night,'' manager Ned Yost said. ''I mean it was a great play by David Lough, but we play solid, solid good defense every single night for the most part.''
Davis (5-9) allowed four hits - all singles - and walked three in a season-high 7 1-3 innings. The right-hander, who came over with James Shields in Kansas City's big offseason trade with Tampa Bay, was 0-4 with a 10.91 ERA in his previous four starts.
''I got ahead of a lot more guys tonight,'' Davis said. ''I got some early swings to help me get deeper in the ballgame, too, and defense was pretty good today.''
Louis Coleman came in after Alejandro De Aza's single in the eighth and got Alexei Ramirez to ground into a double play. Holland then worked a shaky ninth for his 26th save in 28 chances.
The White Sox had runners on the corners with one out when Lough scrambled in to grab Keppinger's liner. Alex Rios did not tag up on the play, and pinch hitter Conor Gillaspie struck out to end the game.
''No-doubles (defense), so I was a little deeper than what I normally would be on Keppinger,'' Lough said. ''He kind of hit it pretty hard out there, thought I had a chance at it so I went for it and I was able to make the catch.''
It was another hard-luck loss for Sale (6-10), who allowed seven hits and struck out seven in his fourth career complete game. The All-Star left-hander is 1-8 with a 2.84 ERA in his last 10 starts.
''Just keep grinding. Stay on top and keep your head up,'' Sale said. ''Things will turn around.''
Billy Butler and Eric Hosmer had two hits apiece for the Royals, who have won seven of nine overall. Butler went 2 for 3 with a walk and is batting .450 (18 for 40) in his last 11 games.
Hosmer and Butler started the sixth with consecutive singles. Hosmer advanced to third on Salvador Perez's fly ball to deep center and came home when Cain doubled down the third-base line.
Cain's hit put runners on second and third with one out, but Sale retired Lough on a harmless comebacker and struck out Miguel Tejada to end the inning.
''He pitched great tonight,'' White Sox manager Robin Ventura said. ''There's no question about it. You can't be perfect, but he's pretty dang close.''
The White Sox threatened in the bottom half, putting runners on the corners with two out. Paul Konerko then hit a drive to center, forcing Cain to make a nice running catch.
Davis waited on the dirt outside of the dugout to congratulate Cain as he hustled in from the outfield, but he was only getting started. Cain made an even better catch for the first out of the seventh, crashing into the wall while taking a hit away from Keppinger.
The second play prompted a few of the Royals to wave their hats toward center while Cain got himself together for the next pitch. He came out in the eighth due to tightness in his left groin, but the Royals said it was precautionary.
''He's got a little bit of a groin strain, why we took him out,'' Yost said. ''He's day to day. Probably rest him tomorrow because we've got an off day on Monday, grab him two days right there.''
It was more than just Cain on a nice defensive night for both teams.
Escobar ranged up the middle and made a spinning throw to retire Keppinger in the second. Then he got Josh Phegley with another strong throw in the fifth after his grounder deflected off the glove of third baseman Tejada.
Second baseman Gordon Beckham and shortstop Ramirez each had a defensive gem for the White Sox. Beckham nearly misplayed Tejada's second-inning popup, but recovered in time to make a tumbling grab in short center field. Ramirez made a diving stop on Perez's grounder up the middle in the fourth, and then managed to shovel the ball to Beckham at second for the forceout.
NOTES: Beckham went 0 for 3 and is 1 for 21 in his last five games. ... The Royals improved to 23-27 on the road and 23-19 against the AL Central. ... The finale of the weekend series features a pair of left-handers. Bruce Chen (4-0, 1.97 ERA) gets the ball for the Royals while Hector Santiago (3-6, 3.38) is slated to start for the White Sox.
Jay Cohen can be reached at http://www.twitter.com/jcohenap