id - int - Primary key
Nome - nvarchar(30)
Idade - int
id nome idade
2 Rita 35
3 Carla 40
4 Julia 20
5 Mariana 19
6 Marina 21
9 Regina 36
10 Paula 22
CREATE PROCEDURE BuscaNomeIdade
@NOME nvarchar(30),
@IDADE nvarchar(3)
AS
DECLARE @SQl varchar(300)
SET @SQL = 'SELECT id, nome, idade FROM tblNome WHERE 1 = 1'
IF (@Nome IS NOT NULL)
BEGIN
SET @SQl = @SQl + ' AND Nome = ''' + @NOME + ''''
END
IF (@idade IS NOT NULL)
BEGIN
SET @SQl = @SQl + ' AND idade = ' + @IDADE
END
EXECUTE(@SQL)
--PRINT(@SQL)
GO
Executar
EXEC BuscaNomeIdade 'Rita', 35
EXEC BuscaNomeIdade 'Rita', NULL
EXEC BuscaNomeIdade NULL, 35
EXEC BuscaNomeIdade NULL, NULL