CREATE PROCEDURE [dbo].[dynamic_example] @lastname varchar(50) = NULL, @firstname varchar(50) = NULL AS BEGIN IF (@lastname IS NULL) IF (@firstname IS NULL) SELECT * from Users ELSE SELECT * from Users WHERE (users.firstname LIKE @firstname) ELSE IF (@firstname IS NULL) SELECT * from Users WHERE (users.lastname LIKE @lastname) ELSE SELECT * from Users WHERE (users.lastname LIKE @lastname) AND (users.firstname LIKE @firstname) END GO