"It's hard to be optimistic when you're 2-7, or 3-7, or whatever," Correia said.
Correia (3-7) ended a personal four-game winless streak by allowing three runs on seven hits over six innings. He walked two and struck out four.
Jack Taschner, Keiichi Yabu and Alex Hinshaw took care of the seventh and eighth, and Brian Wilson pitched a perfect ninth for his National League-leading 35th save.
Correia won his first game since July 28, even though his August ERA is 3.64 and he has not allowed more than three earned runs in any of his last five starts. It was also his first win at home since April 10.
"It doesn't feel like my [left rib] muscles hurt anymore," Correia said. "I feel better the longer I pitch these days."
He nearly didn't get a chance to pitch the fifth inning as Giants manager Bruce Bochy faced a decision when the bases were loaded and two were out.
"I can't take the pitcher out in the fourth inning on his birthday," Bochy said. "He ended up with a quality start and getting the win."
Bengie Molina, who matched his career-high with five RBIs, was glad to offer Correia a helping hand.
"He's been pitching great lately," Molina said. "I wanted to help him so much to win because of the way he's been pitching and hasn't gotten the wins. I feel great for him."
The Giants swept the Padres at home for the first time since April 5-7, 2002, and clinched the season series against them for the second time in five years.
The sweep also improved the Giants' win streak to a season-high five games. They've won eight of 10, easily their best stretch of the year.
"I think it's the consistency," Molina said. "We're all together, getting great at-bats, scoring runs and playing defense. It has all come together."
Molina's RBI double got the Giants on the board in the fourth. He added a run-scoring single in the fifth, and Pablo Sandoval tied it at 3 with an RBI single.
Randy Winn and Fred Lewis each added three hits as the Giants clinched their second straight winning homestand with the Colorado Rockies coming to town for a three-game set.
Sandoval recorded his fifth multi-hit game and extended his hitting streak to eight games. He's played in nine Major League contests.
"He can hit; he did it in the Minors," Bochy said. "That's a special talent he has and I'm most impressed with how comfortable he is. He believes he can play at this level."
Correia gave up a "splash hit" home run to Brian Giles to start the game (his first leadoff homer in four years) and then retired eight straight. The Padres scored twice against Correia in the fourth for a 3-0 Padres lead.
Winn singled home a run in the sixth to put the Giants up for good. Molina's homer, his 10th of the season, was a three-run shot that gave the Giants some breathing room.
It also gave Correia the chance to celebrate his birthday in the proper frame of mind even if he thinks "this is the worst one so far. I'm 28 and staring 30 in the face."