我在sql中遇到以下逻辑,让我的每个员工都有一个员工类型,如'E'=员工,'N'=非员工,'S'=暂停。在我的单选按钮中,我有这三种状态,而且我还有一个全单选按钮,用户可以在其中显示所有三种员工类型。为了显示这些相应的数据,我正在使用存储过程。我在下面有这些代码但不知何故它不起作用,我设法显示'E','N'和'S'员工类型,但是当我选择'A'时,它只显示员工类型{{列中有1}}或null
,但我想要的是显示所有员工类型。下面是我的代码:(我想要的是在我选择全部时显示所有三个包含空类型)
empty
答案 0 :(得分:2)
A B C
a 1 3
b 2 2
---------------------------
Total: 3 5
子句限制返回到 [HttpPost]
public ActionResult Search(string searchtext, int? year)
{
try
{
if (year != null) //you will need to handle the case where year = null
{
string selyear = year.ToString();
行的行 - 为了在where
作为@emp_type = e.emp_type
传递时返回所有行,您需要将其添加到@emp_type
条件:
'A'
或者,更优雅的是,使用SELECT CASE WHEN e.emp_type IS NULL OR
e.emp_type = '' OR
@emp_type = 'A'
THEN 'A'
ELSE e.emp_type END AS emp_type
FROM t_gc_emp e
WHERE @emp_type = 'A' OR @emp_type = e.emp_type
运算符:
in