2013-03-06 61 views
0

请参见下面的表结构和所需的输出(努力纠正这个)的SQL Server 2005 - 检查/验证空值,并添加到结果

Table: Employees 
Structure 
EmpID Manager Account Manager 
1  Conrad Craig 
2  Rob   
3  Holly  Luke 

Output Required (If manager is not null and account manager is not null then Count is 1+1) 

EmpdId Count 
1   2 
2   1 
3   2 

我挣扎写查询,可以给我上面的输出

因此,我们正在检查经理和客户经理的空值。如果它们不是null,那么给它们赋值1并加起来。

问候

回答

0

嗨,你可以这样做:

SELECT EmpId 
CASE WHEN Manager IS NOT NULL AND Account Manager IS NULL THEN 1 ELSE 2 END AS Count 
FROM TBL 
+0

你还可以用更多的WHEN查询样病例扩展您的语句,当x = y,则1当Y <> X,则2当y IS NULL和x IS NULL然后0 ELSE 3 END – gregorr 2013-03-06 11:15:30

+0

我有多个字段(FIELD1,FIELD2,FIELD3),如果全都不为空,那么结果应该是1 + 1 + 1 .....这是3.以上是罚款两个领域,但我有很多领域,我需要检查它们是否为空,并加起来所有的值... – 2013-03-06 11:16:49

+0

我有多个字段(FIELD1,FIELD2,FIELD3),如果所有都不是空然后结果应该是1 + 1 + 1 .....这是3.上面的两个字段是好的,但我有很多字段,我需要检查它们是否为null,并将所有值相加... – 2013-03-06 11:17:11