Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Consulta con while, es basico pero me falla

Estas en el tema de Consulta con while, es basico pero me falla en el foro de SQL Server en Foros del Web. Buen dia chicos! Hace años que no programaba y me toco de nuevo....por fi me ayudan? estoy con sql server 2008 tratando de hacer un ...
  #1 (permalink)  
Antiguo 16/06/2011, 06:41
 
Fecha de Ingreso: junio-2005
Mensajes: 337
Antigüedad: 18 años, 10 meses
Puntos: 1
Consulta con while, es basico pero me falla

Buen dia chicos!

Hace años que no programaba y me toco de nuevo....por fi me ayudan?

estoy con sql server 2008 tratando de hacer un while y se me tilda, me dicen en que me equivoco? yo usaba 2005 y veo que hay diferencias

Lo que estoy haciendo es recorrer la tabla temporal para sacar los seriales y con eso despues ir a otra tabla a buscar datos

declare @primero int, @ultimo int, @serial int, @total int
declare @fmin datetime, @fmax datetime

WHILE EXISTS (SELECT Dev_Serial FROM #t1)
BEGIN
SET ROWCOUNT 1

select @serial = Dev_Serial from #t1
print @serial

continue

end

muchas gracias!

besos para todos :)

Laurys
  #2 (permalink)  
Antiguo 16/06/2011, 08:07
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 7 meses
Puntos: 774
Respuesta: Consulta con while, es basico pero me falla

Creo que el problema es que tu while nunca termina porque siempre va a haber datos en la tabla tempora, podrias hacer esto
Código SQL:
Ver original
  1. DECLARE @primero INT, @ultimo INT, @serial INT, @total INT
  2. DECLARE @fmin datetime, @fmax datetime
  3. DECLARE @x INT
  4.  
  5. SET @x=0
  6. SELECT @total=COUNT(*) FROM #t1
  7. WHILE @x<=@total
  8.  
  9. BEGIN
  10. SET ROWCOUNT 1
  11.  
  12.     SELECT @serial = Dev_Serial FROM #t1     print @serial
  13.     SET @x=@x+1
  14. END
Aunque asi siempre te va a presentar el mismo valor en @serial porque siempre saca el mismo numero de la tabla #t1.

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 16/06/2011, 10:59
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Respuesta: Consulta con while, es basico pero me falla

No veo mucha logica en el WHILE que estas desarollando, empezando porque solo hace un simple PRINT
__________________
MCTS Isaias Islas

Etiquetas: basico, falla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:17.