我有一张这样的表:
ID | Code | YEAR
--------+---------+----------
0 | 1 | '1998'
1 | 5 | NULL
2 | 7 | '2013'
3 | 1 | '1892'
4 | 5 | NULL
5 | 7 | '1900'
我有一个包含3个值的组合框:All
,NULLs
,Not 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'是一个组合框值,可以加载所有没有条件的行
我想在一个查询中完成所有操作。我该怎么办?
答案 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)
)