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

obtener datos al azar o Random

Estas en el tema de obtener datos al azar o Random en el foro de SQL Server en Foros del Web. Hola, lo que requiero es lo siguiente: quiero obtener un campo al azar de una tabla pero tiene que cumplir con varias condiciones, este es ...
  #1 (permalink)  
Antiguo 07/07/2008, 12:58
 
Fecha de Ingreso: septiembre-2004
Mensajes: 217
Antigüedad: 19 años, 7 meses
Puntos: 0
Pregunta obtener datos al azar o Random

Hola,
lo que requiero es lo siguiente:
quiero obtener un campo al azar de una tabla pero tiene que cumplir con varias condiciones, este es un ejemplo de lo que requiero y de lo que realizo actualmente pero que no me funciona bien:

SELECT TOP 1Name FROM Tabla1
WHERE (ID =@id) AND (ini <> '1')
AND (Name <> @col)
ORDER BY NEWID()

Lo que yo quiero que me regrese es un campo al azar cumpliendo estas condiciones.
Esto es posible??
Gracias por su ayuda
  #2 (permalink)  
Antiguo 07/07/2008, 13:07
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: obtener datos al azar o Random

¿Que le da como resultado?, ¿Ya verifico que el filtrado sea correcto?
  #3 (permalink)  
Antiguo 07/07/2008, 13:35
 
Fecha de Ingreso: septiembre-2004
Mensajes: 217
Antigüedad: 19 años, 7 meses
Puntos: 0
Pregunta Respuesta: obtener datos al azar o Random

hola Isslas,

gracias por contestar, ya revise el resultado y cada vez que ejecuto la consulta me obtiene un registro diferente pero también me regresa las columnas que cumplen por ejemplo con la condicion:

(ini = '1')

que se supone no es correcto obtener

gracias por tu ayuda
  #4 (permalink)  
Antiguo 07/07/2008, 14:26
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: obtener datos al azar o Random

Hice un ejemplo, sin tomar en cuenta el campo ID, ya que no le veo mucho caso y siempre me respeta el filtrado:

CREATE TABLE #PRUEBA (ID INT, INI CHAR(1), NAME VARCHAR(50))

INSERT INTO #PRUEBA VALUES(1, '1','GLORIA')
INSERT INTO #PRUEBA VALUES(2, '2','ROCIO')
INSERT INTO #PRUEBA VALUES(3, '1','GLORIA')
INSERT INTO #PRUEBA VALUES(4, '3','ROCIO')
INSERT INTO #PRUEBA VALUES(5, '1','GLORIA')
INSERT INTO #PRUEBA VALUES(6, '5','MARIA')
INSERT INTO #PRUEBA VALUES(7, '1','GLORIA')
INSERT INTO #PRUEBA VALUES(8, '7','MARIA')
INSERT INTO #PRUEBA VALUES(9, '2','KARLA')
INSERT INTO #PRUEBA VALUES(10, '8','OFELIA')



SELECT TOP 1 Name FROM #PRUEBA
WHERE (ini <> '1')
AND (Name <> 'MARIA')
ORDER BY NEWID()
  #5 (permalink)  
Antiguo 07/07/2008, 15:39
 
Fecha de Ingreso: septiembre-2004
Mensajes: 217
Antigüedad: 19 años, 7 meses
Puntos: 0
Pregunta Respuesta: obtener datos al azar o Random

Hola
gracias nuevamente

Y si lo ejecutas varias veces de todos modos te toma encuenta los filtros??
  #6 (permalink)  
Antiguo 07/07/2008, 16:06
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 10 meses
Puntos: 180
Respuesta: obtener datos al azar o Random

claro...

Lo estuve ejecutando varias veces y siempre considera los filtros....
  #7 (permalink)  
Antiguo 09/07/2008, 10:10
 
Fecha de Ingreso: septiembre-2004
Mensajes: 217
Antigüedad: 19 años, 7 meses
Puntos: 0
Respuesta: obtener datos al azar o Random

Hola isslas,

Muchas gracias por tu ayuda, fijate que si estaba haciendo algo mal con los filtros.
nuevamente gracias
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 04:41.