Anatoly Lubarsky Logo
MSSQL, .NET, Design. Life and Music

T-SQL: Optional Parameters in Select Query (Using ISNULL)

Suppose, you have to make search in the database table having optional parameters. For example you have some application with advanced search UI where user does not have to fill all search criteria. We can make it with one small trick - using ISNULL function.


CREATE PROC Search
(
    @param1 INT = NULL
   ,@param2 INT = NULL
)
AS
BEGIN

   SELECT column1
     FROM table1
    WHERE column1 = ISNULL(@param1, column1)
      AND column2 = ISNULL(@param2, column2)

END

If the 1st param in ISNULL function is null - it returns 2nd parameter.


Update: syntax 2005-03-26


Related Posts:

Saturday, February 28, 2004 5:09 AM

Comments

# re: Howwould you do this - Solution

3/26/2005 10:54 PM by Bill's House O Insomnia

# re: MSSQL: Make search with optional parameters
For those from Rio Linda, the Type = NULL makes it optional
if you define the parameters with as they are required

12/27/2006 6:59 PM by GEQ

# re: T-SQL: Optional Parameters in Select Query (Using ISNULL)
This doesn't work if column1 or column2 are actually null in the table. unless you need to turn the SET_ANSI_NULL value....

11/8/2008 2:43 AM by Aaron

Login

Fosimo
Get Fosimo on CNET Download.com!
Fosimo.TR
Get Fosimo.TR from CNET Download.com!
Subscribe via RSS

Article Categories

.Net Framework
ASP.NET Tips
C# Win32 API
HTML, CSS, Web
Javascript Tips
MSSQL Tips
System
System.Net
WebServices

Archives

(02) March, 2010
(01) January, 2010
(02) December, 2009
(03) September, 2009
(03) August, 2009
(09) July, 2009
(04) June, 2009
(04) May, 2009
(02) April, 2009
(05) March, 2009
(03) February, 2009
(03) January, 2009
(06) December, 2008
(04) November, 2008
(06) October, 2008
(07) September, 2008
(09) August, 2008
(05) July, 2008
(05) June, 2008
(07) May, 2008
(06) April, 2008
(03) March, 2008
(02) February, 2008
(04) January, 2008
(03) December, 2007
(05) November, 2007
(06) October, 2007
(07) September, 2007
(13) August, 2007
(11) July, 2007
(14) June, 2007
(16) May, 2007
(14) April, 2007
(10) March, 2007
(17) February, 2007
(21) January, 2007
(17) December, 2006
(14) November, 2006
(13) October, 2006
(13) September, 2006
(14) August, 2006
(12) July, 2006
(11) June, 2006
(12) May, 2006
(22) April, 2006
(36) March, 2006
(14) February, 2006
(14) January, 2006
(20) December, 2005
(17) November, 2005
(17) October, 2005
(17) September, 2005
(14) August, 2005
(18) July, 2005
(12) June, 2005
(17) May, 2005
(13) April, 2005
(22) March, 2005
(12) February, 2005
(14) January, 2005
(19) December, 2004
(15) November, 2004
(13) October, 2004
(16) September, 2004
(12) August, 2004
(29) July, 2004
(25) June, 2004
(33) May, 2004
(26) April, 2004
(18) March, 2004
(11) February, 2004
(07) January, 2004
(03) December, 2003
(02) November, 2003

Post Categories

.Net and C#
Antispam
App. Development
Architecture
ASP.NET
Blogging
del.icio.us
Fosimo
Fun
Google
Javascript
Misc.
MSSQL
Music
Performance
Roller
Social Networks
Tools
Visual Studio
Web 2.0
WebServices
Yahoo

About Me

linkedin Profile
Recs
Recs Books
Who am I

My Sites

onecone
x2line blogs