我正在做一个简单的查询,它使用 DateDiff 函数来查找日期之间的天数。但是,对于某些情况,我想填充一个空白字段(不是空值)。
像这样的东西是我目前拥有的,它似乎工作正常(但它填充了一个空值)。
[Test (Years)] = CASE WHEN TYPE IN ('A','B')
THEN NULL ELSE IsNull(CONVERT(decimal(28,12),
(DATEDIFF(d,@StartDate,ExpirationDate)))/365,0) END
现在,如果我尝试这样的事情...尝试将所有类型 A 和 B 转换为填充空白,我将收到以下错误消息:Error converting data type varchar to numeric.
[Test (Years)] = CASE WHEN TYPE IN ('A','B')
THEN '' ELSE IsNull(CONVERT(decimal(28,12),
(DATEDIFF(d,@StartDate,ExpirationDate)))/365,0) END
我错过了一件简单的事情吗?我试过在不转换为小数的情况下进行计算,但它似乎不起作用。有任何想法吗?谢谢