Inicio Foro Pregunta
Eduardo Soltero 2018-04-06 13:00:15
Pregunta cerrada

Como realizar una busqueda con filtros

En la imagen tengo todos los filtros que requiero para hacer la busqueda, es decir: si quiero realizar una busqueda por depencia me tiene que mostrar los resultados pero a su vez la busqueda puede ser por depencia y area tecnica, o solo area tecnica, en otras palabras puedo hacer combinaciones de busqueda mi pregunta es la siguiente...De que forma fuedo hacerlo debido a que a mi se me ocurre usando varios sentencias IF pero serian demasiados no se si haya otra forma mas sencillas, de forma resumida dejo una idea de como se me ocurrio y lo hago dentro de un servlet.

if(dependencia!=""){
   sql= "select * from turnadas where dependencia ='"+dependencia+"'";
}

else

if(area!=""){
   sql = "select * from turnadas where area_turnada ='"+area+"'";
}

else

if((area!="")&&(dependencia!="")){
   sql = "select * from turnadas where dependencia ='"+dependencia+"' and area_turnada ='"+area+"'";
}

//una vez definida la consulta ya realizo la conexion a la bd y ejecuto la consulta
Referencia
Java JSP

Respuestas

Debes iniciar sesión para poder responder a esta pregunta.
MEJOR RESPUESTA SELECCIONADA POR EL AUTOR

Hola eduardo, tu script para la consulta podría ser similar a lo siguiente y evitas manejar "if" de parte de Java:

sql = "select * from turnadas where ("+(dependencia=="")+" || dependencia='"+dependencia+"') and ("+(area=="")+" || area_turnada='"+area+"')";

Saludos.

Me gusta (0)

Recuerda que así como se encuentran tus consultas están propensas a sufrir ataques de inyección SQL... deberías leer sobre los PrepareStatement.

Me gusta (1)