SQL - Clausula WHERE

 
Vista:

Clausula WHERE

Publicado por Diana (6 intervenciones) el 22/02/2001 17:50:54
Hola, necesito saber como enviarle a una clausula where parametros opcionales, es decir que si mi procedimiento tiene parametros opcionales en la clausula where tome unicamente los parametros asignados y no los opcionales en nulo, por ejemplo:
buscar(nombre,null,edad)
y en el select solo me devuelva los reistros de ese nombre y edad sin tomar el null
o
buscar(nombre,null,null)
y en el select solo me devuelva los reistros de ese nombre sin tomar los null
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Clausula WHERE

Publicado por Angel (20 intervenciones) el 22/02/2001 19:23:17
Lo mejor que puedes hacer es crear un procedimiento almacenado que te devuelva el recordset... p.ej.

create procedure buscar(@nombre ...,@apellido ...,@edad ...)
as
begin

select * from tabla
where (@nombre is null or @nombre = nombre) and
(@apellido is null or @apellido = apellido) and
(@edad is null or @edad = edad)

end
--------
Luego lo puedes ejecutar asi:
buscar 'Nestor', 'Tilla', 25
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Clausula WHERE

Publicado por Daniel Catalá Pachés (13 intervenciones) el 09/03/2001 00:41:02
Con SQL Server 7.0 tienes algunos métodos que igual te ayudan para filtrar mas detalladamente lo que tu quieres. Buscate en la ayuda del analizador de consultas las siguienes palabras:
NULLIF, CASE, ISNULL,GETANSINULL
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar