我在查询SQL Server 2008时遇到了一些问题。查询不返回NULL的值
我有一个包含一些值和类别的表。这个类别可以是例如股票,债券或NULL。
然后我可以想看看我的表中的一切,是不是债券:
SELECT Value, Name, Currency, Assetclass
FROM MyTable
WHERE Assetclass <> 'Bond'
在这里,我希望看到我的所有资产是股票和未分类的(NULL)。但是,我只看到股票。我得到了与将Where-condition设置为Assetclass ='Stock'相同的结果。
我知道NULL被视为未识别的值,但我希望它只忽略包含完全'Bond'的行并保留其他所有内容,但是显然不是这种情况?
'WHERE(Assetclass <>“邦德”或Assetclass为null)'? – 2014-10-03 08:46:04
@huMptyduMpty - >这不起作用 - 我有兴趣选择除了资产类实际包含'Bond'的几行以外的所有东西。 – ssn 2014-10-03 08:47:50
@Steffen:它会起作用。它将选择除bond之外的所有非空值(满足'Assetclass <>'Bond''条件)*以及*所有空值(满足“Assetclass is null”条件)。 – 2014-10-03 08:52:50