SQL Server - select con campos que pueden venir informados o no

 
Vista:

select con campos que pueden venir informados o no

Publicado por jilili (1 intervención) el 19/03/2010 12:09:59
hola, estoy llamando a un procedimiento almacenado de sqlserver 2008 desde visual basic.net.
Como parámetros de entrada tengo dos campos que son CIF y CODIGO POSTAL.
Estos campos pueden venir los dos informados o solo uno y ahí es donde tengo el problema.
He validado los campos y dependiendo de si venía informado o no he ido montando la cadena del where pero no me deja, me obliga a poner el where dentro de la consulta.
Esto es lo que estoy intentando hacer...
Muchas gracias


ALTER PROCEDURE [dbo].[CONSULTA]
-- Add the parameters for the stored procedure here
@var1 VARCHAR(10),
@var2 VARCHAR(5)
AS

BEGIN
declare @cif VARCHAR(10),
@codpostal VARCHAR(5),
@condicion VARCHAR(500)= '';
IF LEN(@cif) > 0
begin
set @condicion = @condicion + 'where cif like "' + @cif + '"'
end
IF LEN(@codpostal)>0
begin
set @condicion = @condicion + ' and codpostal like "' + @codpostal + '"'
end
set @condicion = @condicion + ';';

select * from dbo.empresas & @condicion;

-- SET NOCOUNT ON added to prevent extra result sets from
-- interfering with SELECT statements.
SET NOCOUNT ON;

END
select con campos que pueden venir informados o no
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:select con campos que pueden venir informados o

Publicado por pedro (80 intervenciones) el 19/03/2010 18:10:07
Si yo no leo mal, si el valor cif no viene informado y el CP si el where se te arma sin la palabra where y con la palabra and....
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