GO en realidad no es T-SQL válido:
GO no es una instrucción Transact-SQL; es un comando reconocido por las utilidades sqlcmd y osql y Codeeditor de SQL Server Management Studio.
Deberá eliminar las instancias de GO en su SQL dinámico, o use una de las herramientas mencionadas en el artículo (como osql desde la línea de comandos). Su consulta aún debería funcionar con todas las instancias de GO eliminado del SQL dinámico.