HOUSTON (AP) -- The Houston Rockets are riding their longest winning streak in three years -- and that's what it's taken to get them into playoff contention.
Yao Ming had 25 points and seven rebounds as the Rockets beat the Trail Blazers 95-83 for their seventh straight win.
Rafer Alston scored 13 of his 17 points in the third quarter, when the Rockets began to stretch their lead over the team right behind them in the Western Conference standings.
Alston also had seven assists, and Tracy McGrady had 12 points and six assists for the Rockets, who've matched their longest winning streak since they won the last seven games of the 2004-05 season.
Houston has won 11 of its last 12, and 16 of its last 20. Still, the Rockets came in game merely tied with Golden State for the last playoff spot in the West.
"We're doing well and it looks like we're climbing the ladder at a fast pace," Alston said. "But we're slow-walking. The West is so good. We just have to continue to take care of what we take care of."
The Rockets wrap up their four-game homestand Wednesday against Sacramento, another team right on their heels in the playoff hunt.
"We've got to keep grinding," McGrady said. "We can't lose sight of that. We have to realize that we control our own destiny. Let's not worry about what other teams are doing. Let's worry about what we're doing."
Former Texas star LaMarcus Aldridge scored 22 to lead the Trail Blazers, who've lost four of their last five. All-Star guard Brandon Roy, who missed the last two games due to a death in his family, had 15 points, eight assists and five rebounds.
The Blazers dropped three games behind Houston in the standings and have lost all three meetings to the Rockets this season. They felt as though they let a winnable game slip away this time.
"This was a tough loss for us," Roy said. "Our guys are really down. We're not sneaking up on teams like we did early in the season. We have to find a way to grind things out and get some wins."
The Rockets led by one at halftime, then outscored Portland 35-20 in the first 16 minutes of the second half. Houston held Portland to 19 points in the third quarter, then started the fourth with a 10-1 burst, beating the Blazers for the 14th time in 17 meetings.
The Blazers led 24-18 after a fast-paced first quarter.
Portland hit six of its first nine shots in the second quarter to preserve their lead. With Yao on the bench, Aldridge sank a turnaround jumper before Roy made a free throw to extend Portland's lead to 37-29.
Yao returned with 6:31 left in the first half and the Rockets finished with a 15-6 run to take a 44-43 lead to the break. Houston shot 50 percent (17-of-34) in the half to offset eight turnovers.
Alston sank two 3-pointers and assisted on a dunk by McGrady early in the third quarter as Houston stretched the lead to 58-51. Houston led 69-62 heading to the fourth.
"The second half, we kept our intensity up," Yao said. "We kept pushing like we did the last couple of games. We played a high level on both offense and defense."
The Rockets opened the final quarter with an 8-0 run to push the lead into double digits for the first time. Portland started the quarter with five straight misses and two turnovers -- the kind of scoring drought Coach Nate McMillan has seen too often from his young team this season.
"We keep having stretches where we turn the ball over too much or miss our shots," he said. "We had a bad five-, six-minute run that was very costly."
Roy split two free throws with 7:49 left before McGrady sank a long jumper at the other end to put the Rockets up 79-63. Houston stayed in control the rest of the way, as the Blazers missed nine of their final 15 shots.
The Rockets have won eight of the last nine meetings in Houston. ... Blazers general manager Kevin Pritchard said before the game that F James Jones will miss another 3-5 weeks with a sore left knee. He suffered the injury against Denver on Feb. 4. ... Rockets G Luther Head sat out for the fifth straight game with an injured groin. Coach Rick Adelman said Head would return after the All-Star break.