Foros del Web » Programando para Internet » ASP Clásico »

Realizar filtros de seleccion

Estas en el tema de Realizar filtros de seleccion en el foro de ASP Clásico en Foros del Web. Tengo que realizar una serie de filtros sobre unos registros de una base de datos, pongamos por ejemplo empleados. Tendria por ejemplo que hacer una ...
  #1 (permalink)  
Antiguo 05/03/2004, 03:18
 
Fecha de Ingreso: diciembre-2002
Mensajes: 129
Antigüedad: 21 años, 6 meses
Puntos: 0
Realizar filtros de seleccion

Tengo que realizar una serie de filtros sobre unos registros de una base de datos, pongamos por ejemplo empleados.
Tendria por ejemplo que hacer una seleccion de empleados cuyo sueldo sea x, que tenga tal tipo de carnet, que viva en cierto lugar, con una edad determinada, etc.

Mi idea era pasar los registros por cada condicion y guardar los resultados en un sitio, y esos resultados pasarlos por la siguiente condicion, y asi hasta pasar los registros por todas, pq lo que no sabria muy bien como hacer es ponerle todas las condiciones del filtro a la vez.

Vosotros que pensais? Cual seria la manera optima de realizarlo?
No se, estoy un poco desorientado. Cualquier ayuda seria genial.
Muchas gracias a todos.
  #2 (permalink)  
Antiguo 05/03/2004, 09:47
 
Fecha de Ingreso: abril-2002
Ubicación: La Comarca
Mensajes: 192
Antigüedad: 22 años, 2 meses
Puntos: 0
Sugerencia

Yo te sugiero que hagas todas las selecciones al mismo tiempo.

Como? Pues puedes comprobar 1 a 1 las variables que solicites y, en funcion de su valor, aplicarla o no al filtro.

Ejemplo:

Suponiendo que tengas 3 posibles selecciones:

sel_a : edad : 18,19,20,21,22,23...
sel_b : sueldo : 100.000,150.000...
sel_c : ciudad : ciudad_a,ciudad_b...

Si pasas los parametros por GET desde el form donde tengas las selecciones, en la pagina que recoge esos valores puedes hacer lo siguiente:

filtro = ""

if sel_a <> "" Then

if filtro <> ""

Else
filtro = filtro & " WHERE edad=" & sel_a
End If

End if

if sel_b <> "" Then

if filtro <> ""
filtro = filtro & " AND sueldo=" & sel_b
Else
filtro = filtro & " WHERE sueldo=" & sel_b
End If

End if

if sel_c <> "" Then

if filtro <> ""
filtro = filtro & " AND ciudad='" & sel_c & "'"
Else
filtro = filtro & " WHERE sueldo='" & sel_c & "'"
End If

End if

y una vez comprobado esto, la sentencia quedaria:

sentencia = "SELECT * FROM tabla" & filtro

Espero que esto te sirva para resolver tu problema.

Un saludo.

Ideafix.
__________________
Aus Liebe zu einem Sterblichen muss Elronds Tochter Arwen Ihr elbisches Erbe aufgeben und für immer auf die Reise zu den unsterblichen Ländern verzichten.
  #3 (permalink)  
Antiguo 05/03/2004, 10:35
 
Fecha de Ingreso: diciembre-2002
Mensajes: 129
Antigüedad: 21 años, 6 meses
Puntos: 0
Graciasx1000
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 02:18.