CINCINNATI -- Jason Bay figured he still knew how to hit home runs.
"We were in desperate need of a win," Pittsburgh manager Lloyd McClendon said. "Hopefully, we can get on a roll. I told the guys to keep on fighting."
Bay had three hits, finishing a triple short of the cycle, and his solo homer in the fifth to center field off Eric Milton (2-2) was his first since Sept. 29.
"I wasn't trying to do it, but it's good to know I still can," said Bay, who hit 26 homers last season, when he became the first Pittsburgh player to win the rookie award.
Kip Wells (1-3), pitching on his 28th birthday, won for the first time in six starts since Aug. 7 at San Diego, allowing two runs, three hits and five walks in five innings.
"It wasn't a real good outing, but the last three or four have gotten progressively better," Wells said. "I didn't feel like I pitched well, but I made pitches when I had to."
Wells, 3-0 in his career when pitching on his birthday, avoided what would have been the first 0-4 start of his career.
"I thought his stuff was tremendous," McClendon said. "He just threw too many pitches."
Jose Mesa pitched the ninth for his fifth save in five chances, giving up a two-out double to pinch-hitter Jacob Cruz and a walk to Ryan Freel before retiring Ken Griffey Jr. on a ground ball to second base. Griffey went 0-for-3 with two walks and is homerless in 46 at-bats this year. His previous high at the start of the season was 44 in 1991.
"I was hoping for his first one right there," said Cincinnati manager Dave Miley, who watched his team continue to struggle with runners in scoring position. The Reds were 0-for-7, and are hitting .096 (5-for-52) with runners in scoring position in their seven losses. They are hitting .349 (22-for-63) with runners in scoring position in their eight wins.
"It was just one of those days," Griffey said. "We couldn't get the big hit."
The start of the game was delayed 12 minutes by rain and play started under cloudy skies with a temperature of 52 degrees. Milton (2-2) struggled with the weather, giving up three runs and five hits in five innings.
"It was tough to get a feel out there," he said. "I tried everything. I licked my fingers and blew on my hand, but I couldn't spot the ball. When you don't have velocity and you can't spot the ball, that's a deadly combination. It just felt like I was throwing a cue ball. Their guy did a better job of pitching in the elements.
Wily Mo Pena put Cincinnati ahead with an RBI double in the first, extending his hitting streak to a career-best six games.
Pittsburgh, just 5-11 this year, went ahead for good in the third when Matt Lawton was hit by a pitch, Bay doubled off the right-field wall, Craig Wilson hit an RBI single and Ty Wigginton had a run-scoring grounder.
A run-scoring wild pitch after Freel's leadoff double in the bottom half pulled Cincinnati to 3-2. David Ross drove in a run with a squeeze bunt in the fifth after Adam Dunn dropped Freddy Sanchez's fly ball to left for a three-base error.
"We did a good job of taking advantage of their mistakes," Bay said. "We only had six hits, but we've had games where we had 13 and didn't score enough runs. It was good to finally get a lead and hold on to it."
- Lawton did not lead off for the first time this season. He extended his streak of consecutive games reaching base to 12 when he was hit by a pitch.
- Pirates manager Lloyd McClendon used his 16th lineup in 16 games.
- Slumping Pirates SS Jack Wilson batted leadoff for the first time this season, but went 0-for-4 to extend his hitless streak to 19 at-bats.
- Reds 3B Joe Randa got the day off, his first of the season.