Top seed Alexander Zverev edged out South African qualifier Lloyd Harris 6-4, 3-6, 6-0 to reach the Cologne ATP semi-finals on Friday.
Zverev, the world number seven and US Open runner-up, made the most of Harris struggling with a leg injury in the final set.
“I have got to do a better job of keeping my focus until the end of a match. I relaxed a little bit and then he picked up his game,” Zverev told atptour.com.
Zverev is through to his third semi-final of the year where he will face Alejandro Davidovich Fokina.
The Spaniard battled past Dennis Novak of Austria 6-3, 2-6, 6-3 to reach his second ATP Tour semi-final.
Canada’s Felix Auger-Aliassime defeated Radu Albot 6-3, 6-0 to reach the last-four.
The third seed now faces Spanish fourth seed Roberto Bautista Agut who downed Poland’s Hubert Hurkacz 7-6 (7/4), 5-7, 6-0.