Parametros...

26/02/2008 - 22:25 por AlejoR | Informe spam
Que tal grupo
Como se debe hacer un query el cual recibe 5 parametros y ninguno de ellos
es obligatorio en la consulta, es decir, puede que manden 1, 2, los 5 o
ningun parametro, y se debe resolver la consulta y mostrarla al usuario
(ASP.NET)

Y no se quiere utilizar sql dinamico!

Gracias

Preguntas similare

Leer las respuestas

#6 jcac
28/02/2008 - 22:23 | Informe spam
Hola AlejoR

Puedes hacer esto:

Select * from MiTabla
Where
CampoFiltro1 = isnull(@PARAM1, CampoFltro1)
and CampoFiltro2 = isnull(@PARAM2, CampoFiltro2)
and CampoFitro3 = isnull(@param3, CampoFiltro3)
and CampoFiltro4 = isnull(@param4, CampoFiltro4)
and CampoFiltro5 = isnull(@param5, CampoFiltro5)

espero te sirva.

Saludos

Juan Carlos


"AlejoR" escribió en el mensaje
news:
Que tal. Es SQLSERVER 2000

Si la consulta fuera con todos los parametros seria asi:

Select * from MiTabla
Where
CampoFiltro1 = @PARAM1
and CampoFiltro2 = @PARAM2
and CampoFitro3 = @param3
and CampoFiltro4 = @param4
and CampoFiltro5 = @param5


Pero los parametros no son obligatorios, el usuario podria solicitar una
consulta donde se involucren los parametros 2 y 5
Select * from MiTabla
Where
CampoFiltro2 = @PARAM2
and CampoFiltro5 = @param5


O cualquier combinacion de ellas. (Param1) (Param1, Param3, Param4)
(Param5)..etc etc etc
Si se pensara en un SQL Dinamico, se construiria un string que concatene
los filtro necesarios utilizando un IF.

IF @ParamX No es Nulo
Concatene parametro al query

Y al final se obtiene el query. Pero como la idea no es usar SQLDinamico,
como se plasma ese query en un procedimiento almacenado
Y la otra es que NO podria ponerme a crear query por cada combinación
posible de parametros, seria 5! (factoria)


Espero haberme explicado mejor!



"AlejoR" escribió en el mensaje de
noticias:
Que tal grupo
Como se debe hacer un query el cual recibe 5 parametros y ninguno de
ellos
es obligatorio en la consulta, es decir, puede que manden 1, 2, los 5 o
ningun parametro, y se debe resolver la consulta y mostrarla al usuario
(ASP.NET)

Y no se quiere utilizar sql dinamico!

Gracias



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida