返回null而不是null值

时间:2017-01-06 22:43:41

标签: sql sql-server database select query-string

我有两个表,一个用于客户,另一个用于国籍,并非所有客户表都有分配给他们的国籍他们只是Null,其余分配给他们他们的国籍,我的问题现在我的选择查询只返回如果客户分配了国籍并忽略了空值,我需要选择查询获取空值而不是空值。

注意:我需要使用内连接这个结果。 还有另一个与客户表有关系的表,我无法从中获得创建此客户的用户名,并且始终没有空值,因为没有客户没有创建者,但对于我的上述问题,没有国籍的客户被分配给他们,以及一些他们的国籍分配给他们,我需要这两个记录。

提前致谢

1 个答案:

答案 0 :(得分:0)

由于提供的查询没有选择部分,所以我无法添加该部分,但您可以通过在客户和客户关系表之间进行内部联接然后在两者之间进行左外连接来稍微改变您的逻辑。上述查询和国籍表的输出。有些人喜欢这个

    Select newValue.[columnnames] , dbo.[Yemnak Nationalities].[columnname]
    (Select *
    FROM dbo.ContactBase INNER JOIN dbo.AccountBase ON dbo.ContactBase.new_Account = dbo.AccountBase.AccountId 
    INNER JOIN dbo.SystemUserBase ON dbo.ContactBase.ModifiedBy = dbo.SystemUserBase.SystemUserId 
    INNER JOIN dbo.[Yemnak Title] ON 
    dbo.ContactBase.new_Title = dbo.[Yemnak Title].AttributeValue 
    INNER JOIN dbo.[Yemnak Gender] 
    ON dbo.ContactBase.new_Gender = dbo.[Yemnak Gender].AttributeValue 
    ) newvalue Left Outer Join dbo.[Yemnak Nationalities] ON    
    newValue.new_Nationality = dbo.[Yemnak Nationalities].AttributeValue 

注意: - 由于没有提供选择部分,我刚刚假设了一些列