我有下表:
item_ID | item_Name | Amount
---------|-------------|-------
12 | apple | $1
13 | orange | <null>
14 | grapes | $2.5
对于"橙色"项的"null"值,我想用字符串"N/A"替换它,即使数据来自的列是小数。 可能吗?
我尝试输入该列的表达式,如下所示:
=IIF(IsNothing(Fields!Amount.Value), Sum(Fields!Amount.Value), 'N/A')
但是我收到一个错误,报告失败了。
如果在 SSRS 中的报表层处理此问题,您将获得一些优势:例如,数据的导出仍将导出为数字。
设置正在使用的文本框的值,使其类似于
=IIF( IsNothing(Fields!Cost.Value ), "N/A",Fields!Cost.Value)
以下是将coalesce
与cast
一起使用的一个选项:
select item_ID, item_Name, coalesce(cast(cost as varchar(100)), 'N/A') as cost
from yourtable;
您也可以使用 ISNULL 函数
SELECT cost = ISNULL( TRY_CAST( cost as varchar(50), 'N/A' )