Belgium beat Spain 3-1 on Sunday to qualify for the semi-finals of the men's hockey tournament at the Tokyo Olympics, joining Australia and Germany who had already advanced to those stages.
Spain led 1-0 at half-time, but the Red Lions pulled level in the third quarter when top-scorer Alexander Hendrickx netted off a penalty-corner.
The World champions then scored twice more to seal the win.
They will take on India, who defeated Great Britain 3-1 in the last quarter-final.
India scored from field goals through Dilpreet Singh (7th minute), Gurjant Singh (16th) and Hardik Singh (57th), while Britain's lone goal came from the stick of Sam Ward in the 45th minute.
Earlier on Sunday, Australia reached the semi-finals by beating the Netherlands in a penalty shoot-out in sizzling Tokyo heat, while Germany overcame Argentina 3-1.
A powerful performance by goalkeeper Andrew Charter, who kept a clean sheet in the shootouts - won 3-0 by Australia after the score was 2-2 at the end of regular playing time - helped the Kookaburras win the match.
"It's bloody amazing," said Charter. "To come out here and carry the burden for a bit, it's good for my confidence and it's good for the team defensively moving forward."
The Australians had pulled ahead twice in the game, thanks to two goals by Tom Wickham, only to see the hard-fighting Dutch side equalise through goals by Mink van der Weerden and Jeroen Hertzberger.
Dutch goalie Pirmin Blaak recognised Charter's role in the shootouts.
"Charter saved a few and it was hard to get pressure on the Aussies," he said.
"I think if you miss three (penalty shots) and they score three, they deserve to win."
The result meant the Dutch men's squad won't play the semi-finals of the Olympic hockey tournament for the first time since 1984.
Australia won their clash against the Netherlands after winning the penalty shootout 3-0, after the match had ended in a 2-2 draw in regular playing time.
The Kookaburras had pulled ahead twice in the game, thanks to goals by Tom Wickham, but the Netherlands managed to equalise through goals by Mink van der Weerden and Jeroen Hertzberger.
Australia will play Germany in their semi-finals on Tuesday after they booked a smooth 3-1 win over Olympic champions Argentina earlier in the day.
Germany opened the score in the 19th minute when defender Lukas Windfeder shot a penalty corner low and hard at the left side of the goal, leaving Argentina goalkeeper Juan Vivaldi no chance to stop the ball.
Ten minutes into the second half, the German side added to their advantage after playing out another penalty corner in a beautiful variation which ended with Timm Herzbruch deflecting a low pass from captain Tobias Hauke into the goal.
By then, the Germans had little left to fear from the Argentineans.
"It's hot weather and hot-minded Argentina and we just want to keep it cool and play our German style and I think we did exactly that," said forward Christopher Ruhr.
"We had the game in our hands 60 minutes. A very mature play by us."
Windfeder scored another goal, again through a penalty corner, in the 48th minute, effectively securing Germany's spot in the semi-finals and leaving Argentina with a painful loss.
With eight minutes left to go, Maico Casella Schuth scored off a penalty corner for Argentina, but they were not able to add to their score.
Officials doubled the usual two-minute breaks between quarters to allow players to cool down from the heat at the main pitch of the Oi Hockey Stadium, which was sprayed with water during the half-time break to keep play fast and smooth.
The win gave Germany revenge on Argentina after being knocked out by them in the semi-finals of the 2016 Rio Olympics, when the Germans had to settle for bronze.
Argentina's line-up in Tokyo still contained many of the names that brought the country their first Olympic gold medal in hockey in 2016: Pedro Ibarra, Agustin Mazzilli, Matias Rey and 42-year-old goalie Vivaldi.