Best way to speed up a linked server query - 49 columns plus two calculated columns and 170 mill rows
it is in some way unreadable. Why not trying to call a stored procedure and getting the dataset?

select * from 
OPENQUERY(link_server_name,'exec your_sp par1,par2)


What's more, instead of using CONVERT what about of using CAST?

CAST is ANSI compliant.

Best,