Sql server 2008 SSRS报告中日期字段的值为空时是否显示系统日期?
下面是我在SSRS报告中使用的SQL查询Sql server 2008 SSRS报告中日期字段的值为空时是否显示系统日期?,sql-server-2008,ssrs-2008,reporting-services,Sql Server 2008,Ssrs 2008,Reporting Services,下面是我在SSRS报告中使用的SQL查询 SELECT Claimname,CONVERT(VARCHAR,ClaimResponsedate,101) FROM Claim WHERE DataSourceID = 100011 从上面的查询中,“ClaimResponsedate”可能会得到空值,但在SSRS报告中,当值为空时,该字段显示1/1/1990 如果日期值为空,我需要在报告中显示空值 我尝试了下面的代码来避免,但它不起作用 =IIF(IsNothing(Fields!ClaimR
SELECT Claimname,CONVERT(VARCHAR,ClaimResponsedate,101) FROM Claim WHERE DataSourceID = 100011
从上面的查询中,“ClaimResponsedate”可能会得到空值,但在SSRS报告中,当值为空时,该字段显示1/1/1990
如果日期值为空,我需要在报告中显示空值
我尝试了下面的代码来避免,但它不起作用
=IIF(IsNothing(Fields!ClaimResponsedate.Value),"",Fields!ClaimResponsedate.Value)
OR
=IIF(Len(Fields!ClaimResponsedate)=0,"",Fields!ClaimResponsedate.value)
因此,请帮助我实现这一点,即如果日期值为空,则在报告中显示空值
提前感谢将您的SQL更改为:
SELECT Claimname,
CASE WHEN ClaimResponseDate IS NULL THEN NULL ELSE
CONVERT(VARCHAR,ClaimResponsedate,101) END as [ClaimResponseDate]
FROM Claim WHERE DataSourceID = 100011
另一个选项是将报告字段更改为以下内容:
=Replace(Fields!ClaimResponsedate.Value,"1/1/1900","")
是的,我也尝试过这种情况,尽管在报告中显示的是1900年1月1日。。所以请建议我achieve@VinnaKanna:使用替代解决方案更新“当ClaimResponseDate为空时,那么“””不是您第一个解决方案的更好选择吗?@Frank-是的,我想那会更好。但是如果索赔真的为1/1/1990,那么我们将丢失数据,对吗?有没有其他办法解决这个问题