Ver Mensaje Individual
  #16 (permalink)  
Antiguo 02/02/2011, 16:24
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 18 años
Puntos: 447
Respuesta: Ayuda con consulta SQL

Hay otro error, no había reparado en él y es que tu variable contador es de tipo entero (int), por lo tanto no puede ser concatenada, hay que convertirla primero a varchar, de tal manera que quedaría más o menos así

Código SQL:
Ver original
  1. DECLARE @contador INT, @contS INT, @servicio VARCHAR(100), @query VARCHAR(MAX)
  2. SET @contador = 1
  3. SELECT @contS = 5 --COUNT(Uid) FROM VERIFICACION_VENTAS.dbo.Servicios
  4. WHILE (@contador <= @contS)
  5. BEGIN
  6. SET @servicio = '(SELECT Servicio FROM VERIFICACION_VENTAS.dbo.Servicios WHERE Uid = ' + CAST(@Contador AS VARCHAR) + ') T1'
  7. SET @query = 'select * from ' + @servicio
  8. SET @contador = @contador + 1
  9. PRINT @query
  10. END

Para fines de prueba el límite del contador lo estoy poniendo en 5 (sólo habría que quitar la linea comentada del COUNT) y no estoy ejecutando la sentencia, solo la estoy mostrando... También agregué un alias a tu subconsulta, primero prueba esto y después vas agregando las líneas que faltan, de tal manera que puedas determinar más fácilmente donde existen errores.

Saludos
Leo.