CHICAGO -- Adam Eaton's single to center off Detroit's Anibal Sanchez, his fourth hit of the night, scored J.B. Shuck with the game-winning run as the White Sox completed an improbable comeback from seven runs down and claimed a 10-9 victory over the Tigers in 12 innings Monday night at U.S. Cellular Field. Shuck opened the frame with a double to right and was moved to third by Tim Anderson's sacrifice bunt.
"It's huge," Eaton said. "To claw back the way we did, especially in the ninth to tie it up, it's a huge win for the team. We can hopefully hop on this wave and ride it a little bit."
• Big deficit doesn't dampen White Sox spirits
"Honestly, I think the most important thing guys were trying to do was have good at-bats and keep chipping away," White Sox bench coach Rick Renteria said.
The White Sox tied the game with two runs in the ninth off Tigers closer Francisco Rodriguez, who struggled with his command and delivery the entire frame. Avisail Garcia, down 0-2 in the count with two outs, singled to center on a full-count offering to tie the game.
The contest was kept alive when Todd Frazier hit a potential game-ending double play to shortstop Jose Iglesias, but second baseman Ian Kinsler pulled Miguel Cabrera off the first-base bag as he tried to make the turn on what would have been a close play at first. Brett Lawrie followed with a run-scoring single to left.
James Shields was hit hard from the outset for a third straight start and second straight for the White Sox. The right-hander allowed three in the first, three in the second and one in the third, before hurling a shutout inning in the fourth. It was his first scoreless frame since the fifth inning of a contest against the Giants on May 25, ending a stretch of 10 straight innings in which he was charged with a run. Shields allowed seven runs (six earned) in five innings, walking four and striking out one. In his last three starts, Shields has given up 23 earned runs over 9 2/3 innings, while fanning four and walking 10.
• Shields takes positives from shaky start
Matt Boyd wasn't much better on the mound for Detroit, yielding six earned runs on seven hits in 4 1/3 innings. The White Sox cut a 7-0 deficit to 7-6 after five, but the Tigers scored an insurance run off rookie reliever Tyler Danish in the sixth courtesy of Justin Upton's single. Optioned to Triple-A Charlotte after the game, Danish was pitching for a third straight day and in his third Major League game overall. J.D. Martinez, Kinsler and Cameron Maybin drove in two runs apiece for Detroit. Jose Abreu had three RBIs for the White Sox.
"It wasn't a great night when you score nine runs and you end up losing the game, but it seems like there's always a game like this through the course of a season for every team," Tigers manager Brad Ausmus said.
MOMENTS THAT MATTERED
Strong start: Kinsler set the tone for what became a game full of offense with a home run on Shields' second pitch of the night. For Kinsler, it was his second leadoff homer this season and the 34th of his career. It was also Kinsler's third home run in as many days.
"We got off to a really good start," Kinsler said. "We were swinging the bats well. We were playing good defense. [But] they were swinging the bats well. What are you going to do? There's another team over there. They played well. We played well. We were just on the wrong side of it."
Clearing the fences: The White Sox used the long ball to fight their way back. Abreu launched a two-run shot off Boyd in the third, and Dioner Navarro delivered a two-out solo shot in the fourth. Navarro's third home run marked his first hit in June after an 0-for-14 start to the month.
Right size, wrong shape: Down 8-7 in the sixth, the White Sox had runners on second and third with two outs and Abreu facing Alex Wilson. Abreu ripped a pitch up the middle, but Wilson knocked it down and threw Abreu out to keep the Tigers one run ahead.
K-Rod can't close it: Rodriguez took a blown save for only the second time this season. After Garcia's game-tying single and a walk to Navarro, Rodriguez got Shuck to fly out to avoid the loss, but he took his first blown save since Opening Day. The closer's string of 19 straight saves was tied for the sixth longest of his career.
"Just didn't have any command at all," Rodriguez said. "It was a bad day. I'll just have to find a way to put it behind me." More >
"Every game is a big win. Every win is a big win in the big leagues. It's hard to win a big league ballgame." -- Renteria
"Getting down early, we battled back, and our pitching staff held us well. If we take one pitch at a time, we'll be fine." -- Eaton
UPON FURTHER REVIEW
After Cabrera walked to open the sixth against Danish, Nick Castellanos followed with a hustle double to right-center. But White Sox manager Robin Ventura challenged that Castellanos managed to beat Eaton's throw to second, and after video review, the call was overturned for the first out. The Tigers scored one in the frame but could have had more without that call.
Ventura was ejected for the third time this season and 15th in his managerial career for arguing balls and strikes with home-plate umpire Mark Carlson. The pitch in question came from Matt Albers to Cabrera with two outs in the seventh and looked like it had enough of the plate for a called third strike on a 2-2 pitch, but it was ruled a ball. Cabrera struck out swinging on the next pitch.
The last time the White Sox overcame a seven-plus-run deficit, per STATS LLC, was on June 28, 2002. The White Sox trailed the Cubs, 8-0, but came back to win, 13-9.
Tigers:Jordan Zimmermann starts the second game of this three-game series against the White Sox on Tuesday at 8:10 p.m. ET. Zimmermann is 2-0 with a 1.83 ERA in three career starts against Chicago.
White Sox:Miguel Gonzalez (1-1, 3.57 ERA) makes his eighth start and ninth appearance for the White Sox on Tuesday at 7:10 p.m. CT, with his first start this year against the Tigers. He did work 1 1/3 innings of relief in Detroit on June 5. Gonzalez won for his first time since July 25, 2015, in his last time out against the Nationals.
Watch every out-of-market regular-season game live on MLB.TV.