我有下面的查询但是我不确定如何返回没有flag属性的值。我尝试了type.Property <> 'Flag'
,但即使有记录没有标记属性
SELECT DISTINCT o.ea_guid as CLASSGUID, o.Object_Type as CLASSTYPE, o.name as Name
FROM ((t_object as o
INNER JOIN t_objectproperties as location
ON o.Object_ID = location.Object_ID)
INNER JOIN t_objectproperties as type
ON o.Object_ID = type.Object_ID)
WHERE location.Property = 'Location'
AND location.Value = 'Queens'
AND type.Property = 'Flag'
ORDER BY o.name ASC
答案 0 :(得分:2)
我不清楚你到底想要什么。这应该为您提供type.Property
不是'Flag'
的行,包括Null。
AND Nz(type.Property, '') <> 'Flag'
如果您要从Access应用程序会话外部运行查询,请使用IIf
而不是Nz
。
AND IIf(type.Property Is Null, '', type.Property) <> 'Flag'
如果您只想要type.Property
为空的那些行...
AND type.Property Is Null
答案 1 :(得分:1)
如果需要测试值为null,请使用type.Property IS NULL
。 SQL中没有null的等式测试。