Leon Draisaitl extended his goal streak to seven games for the Oilers (32-20-8), who had a five-game point streak end (2-0-3). Jack Campbell allowed four goals on 14 shots before being replaced by Stuart Skinner, who made 10 saves.
"I know we mounted a comeback and we had some people that had some good efforts, but not enough. Too many passengers today for us," Edmonton coach Jay Woodcroft said. "And in the end, not detailed enough, and we were made to pay. We beat ourselves today in a lot of ways. … All credit to Columbus for playing hard. Certainly, we're respectful of that, but I believe we beat ourselves today."
Roslovic put Columbus back in front 5-4 at 9:01 of the third period, scoring on a long rebound for his first goal in 14 games. He then made it 6-4 at 14:56.
With Skinner pulled for an extra skater, Zach Hyman got the Oilers within 6-5 at 17:04.
Korpisalo finished with 22 saves in the third period.
"They were peppering us," Blue Jackets coach Brad Larsen said. "'Korpi' really stood tall, and then we made them pay for a couple of mistakes, that was that key, Jack with two huge goals."