"He's ready to go. There's no doubt about it," Pirates manager Clint Hurdle said. "His preparation has always been good. I just like the fight that he's got when he gets in the box."

Pittsburgh won for the seventh time in eight games and improved to 10-2 in interleague play this season. It has won eight straight against the White Sox, outscoring them 45-17 during the streak.

Chicago matched the worst start in franchise history at a major league-worst 10-29. The White Sox have dropped nine of 10.

The game was tied at 2 when Elias Diaz led off the seventh with a double against Chicago reliever Joakim Soria (0-2). Jordy Mercer walked with one out and Bell grounded a single into left.

Rookie Edgar Santana (1-0) allowed one hit in 1 1/3 scoreless innings for his first major league win. He relieved Jameson Taillon with the game tied and the bases loaded in the sixth inning and got rookie pinch-hitter Daniel Palka to hit an inning-ending groundout.

"It was a really exciting moment," Santana said. "When I came in, I just tried to get this guy out. I didn't want the runs to score for my friend, Taillon. I wasn't thinking about (getting) the win."

Palka was disappointed not to come through in the clutch.

"He got me out front and I rolled over on it," Palka said. "It wasn't a good piece of hitting."

Felipe Vazquez pitched the ninth for his eighth save in eight chances. Welington Castillo singled with two out, but Jose Abreu bounced into a game-ending forceout.

Leury Garcia and Yolmer Sanchez homered for the White Sox, who outhit the Pirates 8-4.

Pittsburgh's Sean Rodriguez hit a two-run double in the second.

Taillon allowed five hits, struck out five and walked three, showing no ill effects from a cut right index finger that forced him from Friday's start against San Francisco after three innings.

"He had to roll his sleeves up, and went to work all day long," Hurdle said. "He stayed aggressive throughout."

Hector Santiago pitched five innings for Chicago in place of Carson Fulmer, who was pushed back to Friday against Texas to allow for extra work with pitching coach Don Cooper.

"I thought he did a nice job," White Sox manager Rick Renteria said. "He kept us in the game. He pitched with conviction and did a good job of keeping them off balance."

ANDERSON'S DAY OFF

White Sox shortstop Tim Anderson was not in the lineup after starting each of the first 37 games. He pinch-hit in the ninth and flied out. Sanchez, the regular third baseman, played shortstop and Matt Davidson started at third.

Sanchez made a sliding over-the-shoulder catch in short left field to take away a hit from David Freese in the seventh inning.

TRAINER'S ROOM

Pirates: C Francisco Cervelli (bruised right forearm) and CF Starling Marte (strained right oblique) were out of the lineup after leaving Tuesday night's 7-0 win. Both are day to day. ... RHP Joe Musgrove (strained right shoulder) is expected to make his last rehab start Thursday for Triple-A Indianapolis, and then make his Pirates debut Tuesday at Cincinnati. He was acquired from Houston in the offseason.

UP NEXT

White Sox: RHP James Shields (1-4, 5.44 ERA) starts Thursday's opener of a four-game series against visiting Texas. LHP Cole Hamels (2-4, 3.48 ERA) goes for the Rangers. Shields is winless in eight starts since beating the Royals at Kansas City on opening day.

Pirates: RHP Chad Kuhl (4-2, 4.17 ERA) will be on the mound Thursday for the start of a four-game series at San Diego. LHP Eric Lauer (1-2, 8.27 ERA) starts for the Padres. Kuhl is 3-1 in his last five starts.