TORONTO — DeMar DeRozan and James Harden have been battling on the basketball court for more than a decade.
It's hard to imagine any of their previous encounters was as entertaining as this one.
DeRozan scored a career-high 42 points and tied his career high with 11 rebounds as his Raptors beat Harden's Rockets 99-96 on Monday night, Toronto's eighth straight home victory over Houston.
"It's definitely cool because we've been playing against each other since we were kids," DeRozan said of Harden, who also grew up in the Los Angeles area. "That's one of my close friends in the league to this day.
"I'm close to his family, he's close to my family, so it's always cool," DeRozan added. "Now we can cherish this 20 years from now, 30 years from now, just joking, you know, have fun together."
DeRozan made a go-ahead turnaround bank shot with 1:27 left, the 11th lead change of the final quarter, then sealed it with a jumper over Harden with 18 seconds to go. He made 14 of 27 attempts from the floor and hit 12 of 17 at the free throw line.
"The most important thing, not only the points, was his defense," Raptors coach Dwane Casey said of DeRozan, who guarded Harden down the stretch. "I thought his defense and rebounding was as solid as anything else, which made it an all-around excellent game for him."
Jonas Valanciunas scored 15 for Toronto, while Lou Williams had 13.
Harden scored 31 for the Rockets, whose four-game winning streak was snapped. Houston has not won north of the border since a 114-100 victory on March 16, 2007.
"We had our opportunities, we just didn't get the job done," Rockets coach Kevin McHale said.
Trevor Ariza had 15 and Corey Brewer scored 13 for the Rockets.
DeRozan and Harden, teammates on the USA squad that won gold at last summer's World Cup, first squared off when they were around 12 years old, DeRozan said.
"He didn't have no beard back then," DeRozan joked.
Houston's Dwight Howard was rested after finishing with 11 points and 10 rebounds in 19 minutes of Sunday's 99-91 win at Washington, his third game in five nights since returning from a right knee injury.
"Dwight is going to have limited minutes for a while," McHale said before the game.
The Raptors snapped a streak of 10 straight losses against opponents with winning records. They hadn't beaten a team above .500 since a 105-80 victory at Atlanta on Feb. 20.
Ariza's 3-pointer gave Houston a 96-95 lead with 1:44 remaining before DeRozan answered with his basket.
With a chance to put Toronto up three, DeRozan missed a pair of free throws with 45 seconds left. A tie up on the second miss led to a jump ball, which Terrence Ross won for the Raptors. After a pair of Toronto timeouts, DeRozan pulled up for his jumper over Harden, making it 99-96 with 18 seconds remaining.
"He had it going," Harden said. "When you have it going like that, shots are going to fall."
Ariza got two chances to shoot for the tying basket in the final seconds, but missed both attempts.
"They made plays to win and we didn't," Ariza said.
Houston led 52-48 at halftime. DeRozan scored 13 in the third but Harden had 15, including the final five, as the Rockets took a 76-74 lead into the fourth.
Rockets: Rookie C Clint Capela scored the first basket of his NBA career on an alley-oop from Harden in the first quarter. He finished with eight points on four eye-popping dunks. ... PG Patrick Beverley will undergo surgery Tuesday to repair a torn ligament in his left wrist and will miss the remainder of the season. Beverley was injured in a March 23 win over Indiana.
Raptors: PG Kyle Lowry sat for the fifth time in six games with a sore back. "He's having trouble cutting, going either way," Casey said. "He probably wouldn't go if (tonight) was a playoff game." There's no timetable for Lowry's return. ... Amir Johnson had 16 rebounds.
DeRozan became the fourth player in Raptors history to score 40 or more points and grab 10 or more rebounds. The others were Chris Bosh, Vince Carter and Acie Earl. There have been 12 such games in the NBA this season, two of them by Harden. Anthony Davis and Russell Westbrook each have three.
Rockets: Host Sacramento on Wednesday night.
Raptors: Visit Minnesota on Wednesday night.