"It was a really well-pitched game," Wilson said, "and Sale just had video-game stuff tonight."
Try hitting a guy who features four premium pitches -- a mid-90s four-seam fastball, a low-90s two-seamer, a mid-80s changeup and a low-80s slider -- from a herky-jerky delivery coming off a wiry, 6-foot-6 frame. The Angels couldn't. They managed only one hit, a seventh-inning Mike Trout single that broke up Sale's perfect game with eight outs left, and made Wilson's margin for error almost non-existent in a 3-0 loss at U.S. Cellular Field.
It was a rough way to snap the second three-game winning streak of the season; a tough taste to go home to, now that they've split their six-game road trip and moved to 14-23 --10 games back of the Rangers in the American League West.
But hey, at least they got a hit.
"Obviously, you don't want to get no-hit," Angels manager Mike Scioscia said, "but a loss is a loss."
Wilson shut out the White Sox (15-20) through the first six innings, giving up four hits and three walks while keeping the game tied with a lights-out Sale on the other side. But in the bottom of the seventh of a scoreless game, Wilson gave up a one-out walk to Tyler Flowers, a single to Tyler Greene, then put them both in scoring position with a wild pitch.
After getting Alejandro De Aza to ground out to first base, Wilson threw a 3-1 slider to Alexei Ramirez, who lined it into left field for the two-run single that would decide the game.
"It's designed to get him to hit the ball on the ground on that side of the field, or have him swing and miss," said Wilson, who exited after that at-bat and watched Michael Kohn give up a third run on an Alex Rios double. "It's cold outside and all that stuff. I just didn't have maybe the sharpness. He didn't swing and miss at it. What are you gonna do?"
Against Sale, nothing.
The 24-year-old left-hander struck out seven, walked none, faced one over the minimum and allowed only two baserunners -- Trout on his single up the middle with one out in the seventh, and Chris Iannetta in the ninth after he reached on Ramirez's throwing error.
"I don't think they had a chance against him tonight," Rios said. "Seriously."
Sale needed only 14 pitches to get through the first two innings, had thrown fewer than 50 when he took the mound for the sixth and finished his first career shutout with 98 pitches, 68 of which were strikes. He got into only one three-ball count, extending his walk-less streak to 22 1/3 consecutive innings, and threw first-pitch strikes to 19 of the 28 batters he faced, putting him at 4-2 with a 2.88 ERA on the season.
"I didn't wake up this morning and say, 'I want to throw a perfect game or a no-hitter,'" Sale said. "I come to the ballpark every day when I'm pitching and just want to keep my team in the game and win this game. We did."
On May 4 at Angel Stadium, Orioles right-hander Freddy Garcia had a perfect game through six until batter No. 19, Erick Aybar, broke it up with a single up the middle to lead off the seventh.
Eight days later against Sale, Angels hitter No. 20, Trout, took a 2-0 fastball and ripped a single up the middle to avoid the wrong kind of history.
"I just told myself to hit this ball up the middle, stay to the right side, not try to get too big," Trout said. "I think if I get too big right there, I foul it off or fly out. He had good stuff tonight. You have to give it to him."
Former Rangers starter Kenny Rogers is the only pitcher to hurl a perfect game against the Angels, retiring all 27 in order in Texas on July 28, 1994. They've been no-hit five other times, the last one coming against ex-Twins starter Eric Milton in Minnesota on Sept. 11, 1999, and have now been held to one hit through nine innings on 28 occasions -- with five of those coming against the White Sox.
They'll face Sale again on Friday.
"That competitive side of you wants to get him next time," right fielder Josh Hamilton said. "Everybody has good nights. Sometimes they have phenomenal nights."