Stored Procedures (SQL Server)

Javier
22 de Diciembre del 2004
Hola, tengo un problema que no se si tiene una solución simple pero espero que sí y que alguien me pueda ayudar. El problema es que tengo un stored procedure con una consulta de SELECT y necesito pasarle como parámetro toda la condición (que la tengo como un string en una variable de mi sistema) para aplicar filtros sobre los datos.

Ejemplo:

CREATE Procedure viewClientes
@Condicion varchar(200)
AS
SELECT * FROM CLIENTES
WHERE @Condicion
Return

Donde a @Condicion le voy a pasar como valor un string como los siguientes:

- Edad > 20
- Nombre LIKE 'Car%" AND Sexo = 'Femenino'
- FechaIngreso BETWEEN #1/1/2004# AND #31/12/2004#

O cualquier condición que al usuario se le ocurra


No sé si se entiende lo que quiero hacer, pero el sql no lo entiende, me da un error al poner "WHERE @Condicion". Hay alguna forma de hacerlo?

Muchas gracias.

Javier

mamerto
22 de Diciembre del 2004
A ver mi chavo, antes que nada lee un manual de sql para que tu entiendas al sql, no puedes colocar una condiciona where de esa manera eso es una ..., con eso quieres demostrar que tu pc tiene inteligencia propia y que tu no sabes programar en sql, entonces hay que corregir las cosas, y segun tu consulta, necesitas recibir 4 parametros, porque debes de tener 4 campos que es donde debe quedar tu consulta, te voy a poner un ejemplo con dos y tu le sumas a 4

create procedure pruebasql
@lsedad varchar(3), 'utiliza varchar si no vas a restar edades
@lsnombre varchar(50)
as
select * from clientes where [email protected] and [email protected]

go


listo