St. Louis, winless in its previous seven games, ended the streak with a thrilling comeback over Conor McDavid and the Oilers.