CALGARY, Alberta (AP) — Dougie Hamilton is closing out an impressive performance in a disappointing season for the Calgary Flames.

Hamilton's league-leading 17th goal by a defenseman helped Calgary snap a seven-game losing streak with a 3-2 win over the Edmonton Oilers on Saturday night.

"Quick release. (His shot) comes on you in a hurry," said Flames goaltender Mike Smith, who only has to stare it down in practice. "He changes the angle really well. He's definitely got a good shot."

Mikael Backlund had a goal and an assist and Garnet Hathaway also scored to help Calgary to its first win since a 1-0 victory over Edmonton on March 13. Michael Frolik added two assists, and Smith stopped 34 shots.

Anton Slepyshev and Mike Cammalleri scored for Edmonton. Cam Talbot gave up three goals on seven shots before he was pulled 15 1/2 minutes in with the Oilers trailing 3-1. Al Montoya came on and stopped all 13 shots he faced.

Edmonton grabbed the lead on Slepyshev's sixth of the season 2:41 into the first, but the Flames responded with three goals in less than nine minutes.

Hamilton got it started with a wicked 30-foot wrist shot that beat Talbot at 6:43 on the Oilers' first shot on goal. Hamilton has 13 goals since Jan. 1, tying him with Sean Monahan for second on the team behind Matthew Tkachuk in that stretch.

"It's so heavy and his release is quick, he doesn't need a wind-up to get the velocity on it. I thought Dougie had an excellent game," Flames coach Glen Gulutzan said.

Hathaway put the Flames in front at 11:54, beating Talbot on a wrist shot inside the post from nearly 60 feet out. The short-handed goal was Hathaway's first goal in 42 games.

Backlund neatly pulled the puck around Talbot and fired in his 14th goal of the season with 4:32 remaining in the first. That was it for Talbot.

"It wasn't his best night," Oilers coach Todd McLellan said. "If we could get one of them back, we'd take it. But he's been tremendous. In the last six weeks, he's been a rock for our team."

The Oilers were the much better team in the second period, outshooting Calgary 12-5 and narrowing the deficit to 3-2 on Cammalleri's deflection with 7:19 left.

"A tale of two teams. First period, not good, nothing to be proud of," said Cammalleri, who hadn't scored since Dec. 28. "Second two (periods), probably more how we want to play."

In one sequence, Edmonton had three odd-man rushes within the same penalty kill, but it only got one shot out of it. On consecutive 2-on-1s, Connor McDavid and Leon Draisaitl failed each time to get a shot on goal.

Early in the third, the same duo combined again, but Draisaitl rang a shot off the post.

NOTES: McDavid, the NHL's leading scorer, failed to pick up a point, snapping his six-game scoring streak (seven goals, seven assists). ... Edmonton was 0 for 5 on the power play. Calgary was 0 for 3 and fell to 1 for 47 over the last 16 games. ... Calgary F Johnny Gaudreau returned to the lineup after missing two games (family matter). His line centered by Nick Shore also had Edmonton-born Spencer Foo, who made his NHL debut. ... With the Travis Hamonic (upper body) out, Matt Bartkowski returned to the lineup after being scratched 45 of the previous 46 games.

UP NEXT

Oilers: At Minnesota on Monday night before closing the season with two home games.

Flames: Host Arizona on Tuesday night.