Leury Garcia homered and drove in three runs as the White Sox edged b the Royals 9-6 in Chicago.
Omar Narvaez and Jose Abreu also went deep for the White Sox and Daniel Palka had three hits, an RBI and scored two runs.
James Shields pitched effectively into the seventh to earn the win and Joakim Soria locked down the save.
Chicago has won two straight.
Kansas City starter Brad Keller surrendered five runs on seven hits and four walks in less than three innings to take the loss.
The Royals have lost 67 games, equaling their loss total in 2015 when they won the World Series.