SQL Server中的NULL条件

时间:2013-07-22 04:47:01

标签: sql sql-server sql-server-2008

我有一张这样的表:

ID      | Code    | YEAR
--------+---------+----------
0       | 1       | '1998'
1       | 5       |  NULL
2       | 7       | '2013'
3       | 1       | '1892'
4       | 5       |  NULL
5       | 7       | '1900'

我有一个包含3个值的组合框:AllNULLsNot Nulls

ALL:加载所有行,没有条件。

SELECT * FROM tbl_Location

Nulls

SELECT * FROM tbl_Location Where YEAR is Null

'不是空的'

SELECT * FROM tbl_Location Where YEAR is not Null

'All'是一个组合框值,可以加载所有没有条件的行

我想在一个查询中完成所有操作。我该怎么办?

1 个答案:

答案 0 :(得分:2)

您需要在@Status中传递Combobox的值:

在这里你需要设置这样的条件:

DECLARE @Status varchar(15)
--set the Status

SELECT * 
FROM tbl_Location
WHERE (@Status = 'All' 
       OR (@Status = 'Nulls' AND YEAR IS NULL) 
       OR (@Status = 'Not Nulls' AND YEAR IS NOT NULL)
      )