Ver Mensaje Individual
  #9 (permalink)  
Antiguo 08/06/2015, 08:25
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 5 meses
Puntos: 774
Respuesta: recorrer tabla con while/for/fetch o algo

pero para que recorrer toda la tabla si solo vas a tener 4 o 5 coincidencias, por eso mejor hacerlo asi ;)


Código SQL:
Ver original
  1. DECLARE @nombre VARCHAR(MAX)
  2. DECLARE @id INT
  3. DECLARE @fecha datetime
  4. DECLARE @x INT
  5. SET @fecha=getdate()
  6. SET @x=1
  7. SELECT *, IDENTITY(INT,1,1) AS rn INTO #temp FROM tabla WHERE fecha=@fecha
  8.  
  9. while @x<=(SELECT COUNT(*) FROM #temp)
  10. BEGIN
  11.  
  12. SELECT @nombre=nombre,@id=id FROM #temp WHERE rn=@x
  13.  
  14. EXEC msdb.dbo.sp_send_dbmail @profile_name='Profile de prueba',
  15.  
  16.         @recipients = @nombre,
  17.         @subject = "Fecha service",
  18.         @body = @Mensaje
  19.  
  20. UPDATE TABLE
  21. SET fecha=DateAdd(DAY,150,fecha)
  22. WHERE id=@id
  23.  
  24. SET @x=@x+1
  25. END
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me