这是使用堆栈溢出我的第一次,所以我希望我要求在正确的道路这个问题。SQL查询 - 添加NULL结果SELECT查询
我有2个,我想比较和识别遗漏值SQL查询,虽然我无法加入在为NULL进入第二个查询,以确定缺少的信息的字段。我将列出查询,然后解释我在找什么。
查询#1
SELECT C.CustomerId, C.CustomerName, C.StatusId
FROM Customer C
WHERE C.StatusId = 1
ORDER BY C.CustomerName
查询#2
SELECT C.CustomerId, C.CustomerName, C.StatusId, I.AuthorityId
FROM Customer C
JOIN Identifier I ON I.CustomerId = C.CustomerId
WHERE C.StatusId = 1
AND I.AuthorityId = 11
ORDER BY C.CustomerName
第一个查询给我说是在我们的系统中活动的客户名单。第二个查询为我提供了一个活动客户列表,其中AuthorityId = 11。
从我的活动客户列表(结果来自查询#1),有几个客户没有显示在结果中从我的第二个查询,因为他们在AuthorityId = 11的标识符表中没有记录。我想生成一个列表,显示所有活动客户以及AuthorityId列中的数据,但是如果活动客户没有在AuthorityId = 11的标识符表中记录,我希望它声明为NULL,以便我可以清除丢失的数据。
我希望这是清楚的是我期待的。
在此先感谢您的帮助!
是不是你留下参加由“AND AuthorityId = 11”取消了呢?结果集不包含标识符中没有记录的任何客户,这需要包含在联合声明中,或者使用ISNULL或类似方法进行核算。 – GarethD 2012-02-07 16:19:47