SQL视图从非空表推断可空列?
|
我有一个包含非空\“ quantity \”(十进制)和\“ status \”(int)列的Product表,并使用以下case表达式在该表上创建了一个视图:
SELECT P.ProductTypeId,
(CASE WHEN P.StatusId IN (5, 8) THEN 0 ELSE -P.Quantity END) AS Quantity,
...
FROM Product P
将ProductTypeId正确推断为非null。但是,即使基础列不是可为空,此视图的“数量”列也被推断为可为空。这对我来说没有任何意义。
在这种情况下,我可以使用ISNULL / COALESCE提供一个默认值并强制不可为空,但是没有有意义的默认值,而且从我的理解来看,这不应首先发生。有什么想法吗?
没有找到相关结果
已邀请:
1 个回复
体悉
的示例是