Schalke ended a six-game winless run as Wolfsburg slipped to defeat, plus all the latest from the Bundesliga.
Augsburg only just managed to keep hold of their place inside the top six after a 0-0 draw at home to Cologne.
Borussia Dortmund closed in on the Bundesliga top six with victory, while Bayer Leverkusen stumbled to a 1-1 draw at Cologne.
Hamburg picked up their first win since early February by beating Augsburg 3-2.
Borussia Dortmund responded to the news of Jurgen Klopp's imminent departure with a 3-0 victory over Paderborn,
Augsburg moved five points clear of Hoffenheim thanks to a 2-1 win over Stuttgart.