Código SQL:
Ver original
DECLARE @cont INT DECLARE @sqlquery VARCHAR(1000) DECLARE @sqlquery2 VARCHAR(500) DECLARE @sqlquery3 VARCHAR(2000) DECLARE @anho VARCHAR(4) SET nocount ON DROP TABLE ti SET @anho = (SELECT YEAR(getdate())) SET @cont = 1 SET @sqlquery = '' while @cont <= 12 BEGIN SET @sqlquery2 = '(a.['+@anho + RIGHT('00'+CAST(@cont AS VARCHAR),2)+']+b.['+@anho + RIGHT('00'+CAST(@cont AS VARCHAR),2)+']+c.['+@anho + RIGHT('00'+CAST(@cont AS VARCHAR),2)+']+d.['+@anho + RIGHT('00'+CAST(@cont AS VARCHAR),2)+']) as ['+@anho + RIGHT('00'+CAST(@cont AS VARCHAR),2)+'],' EXEC (@sqlquery2) SET @sqlquery = @sqlquery + @sqlquery2 EXEC (@sqlquery) SET @Cont = @Cont + 1 END EXEC(@sqlquery) SET @sqlquery3 = 'select a.gestion,'+@sqlquery+' '+quotename('GES08','''')+' as COD_GES into ti from Llamadas_Mensual_Oro_Final a inner join Llamadas_Mensual_plata_Final b on a.gestion = b.gestion inner join Llamadas_Mensual_Reten_Final c on b.gestion = c.gestion inner join Llamadas_Mensual_cable_Final d on c.gestion = d.gestion' EXEC(@sqlquery3) SET nocount off SELECT * FROM ti
lo que sucede es que la consulta se ejecuta sin problemas(incluyendo dentro de un SP) pero al momento de ejecutarse, muestra mensajes de alerta(errores) indicando lo siguiente: Msg 102, Level 15, State 1, Line 1
Incorrect syntax near 'a'. las veces que especifique en el contador.
la consulta seria como ocultar estos mensajes de alerta, ya que el query