PHILADELPHIA -- A little smallball and more strong pitching got the Philadelphia Phillies back on track.
Cole Hamels threw eight impressive innings, Jimmy Rollins drove in the go-ahead run with a sacrifice fly and the Phillies beat the Colorado Rockies 2-1 Wednesday night to snap a four-game losing streak.
"We got a bunt, a sacrifice. It's good to see us doing that. That's baseball," Hamels said.
Hamels (5-2) allowed one run and five hits, striking out eight for his first career win against the Rockies. He entered 0-3 with an 8.22 ERA in three career starts against Colorado, including two in the postseason.
|More on Rockies at Phillies|
The NL East-leading Phillies had just seven runs and 17 hits in the previous four games. They got just enough this time.
"I'm concerned about it," manager Charlie Manuel said of the team's hitting woes. "But with the pitching we have, we'll keep chipping away and we're going to improve our offense. We're gonna get it done."
Wilson Valdez led off the bottom of the eighth with a single to left. Pinch-hitter Shane Victorino sacrificed him to second and he advanced to third on a wild pitch. Rollins followed with a liner to right and Valdez slid in safely ahead of Ryan Spilborghs' throw.
Ryan Madson finished for his seventh save in as many tries. He allowed a leadoff double to Seth Smith, but worked around it. Madson struck out Carlos Gonzalez and Troy Tulowitzki swinging at offspeed pitches. He carefully pitched around Todd Helton before intentionally walking him on a 3-0 count. Madson then struck out pinch-hitter Jason Giambi to end it.
"It was fun," said Madson, who is closing because Brad Lidge and Jose Contreras are hurt. "Definitely it's magnified in the ninth inning, but you have to take a breath and realize there's more pressure on the hitters."
Jorge De La Rosa (5-2) was the hard-luck loser. The lefty allowed two runs -- one earned -- and five hits to record his first career complete game.
"It's a shame De La Rosa had to accept a loss," Rockies manager Jim Tracy said. "It was a terrific performance."
Colorado tied it at 1 on Helton's RBI double with two outs in the seventh. Gonzalez hit a double to center with one out and scored on Helton's drive to left. Hamels had retired 14 straight before Gonzalez got his hit.
The Phillies went ahead 1-0 in the fifth. Raul Ibanez got them started with a one-out single. After Carlos Ruiz was hit by a pitch, the runners advanced on catcher Chris Iannetta's passed ball. Valdez then lined a single to left to score Ruiz. De La Rosa escaped further trouble by getting Hamels to ground into a double play.
Help could be on the way for the Phillies' anemic offense. Chase Utley was scheduled to play all nine innings Wednesday and Thursday at Class-A Clearwater, and it's possible the five-time All-Star second baseman returns before the nine-game homestand ends May 26. Utley has been sidelined all season with a knee injury. Outfielder Domonic Brown, who broke his hand in spring training, is playing well at Triple-A and could get promoted soon.
"We have to fight no matter who we are missing," Valdez said. "We have to play the game and score runs."
The Phillies helped Hamels with solid defense early. Right fielder John Mayberry Jr. threw out Alfredo Amezaga trying to go from first to third on Gonzalez's one-out single in the first. Ruiz, the catcher, nailed Spilborghs trying to steal second to end the second.
- Rockies RHP Aaron Cook, who has been on the disabled list all season with a broken ring finger on his throwing hand, had an impressive rehab outing for Double-A Tulsa. He threw gave up one earned run and three hits, striking out six in five innings.
- De La Rosa fell to 0-4 against the Phillies. He entered with an 11.34 ERA in four career starts against them.
- Victorino (right hamstring) missed his third straight start. He'll have an MRI on Thursday.
- A crowd of 44,665 was the 157th straight sellout at Citizens Bank Park, including postseason play.
- The Phillies have scored more than three runs just six times in May and are 8-8 this month.
- Hamels became the 60th active pitcher to reach 1,000 career innings pitched.
- Lidge could throw off the mound for the first time Thursday.