首页 > 解决方案 > 删除两个特殊字符和文本之间

问题描述

我有一个报告显示 SQL Server 数据库的字段中的文本数据。有时用户需要在文本末尾添加特殊代码,因此他们将代码放在两个 $ 之间。在 SSRS 报告中,我需要隐藏该代码和两个 $ 并仅显示文本本身。

例如,如果我有来自 SQL 数据库的以下文本:

我的名字是AAAA。$z123$

我需要将其视为:

我的名字是AAAA。

目前我在 SSRS 中使用下面的代码,但它只有在文本有特殊代码时才有效。如果文本没有特殊代码,则显示错误:

=Mid(Fields!DESCRIPTION.Value ,1,InStr(Fields!DESCRIPTION.Value ,"$") - 1)

标签: ssrs-2008-r2

解决方案


我是从 SQL 查询中完成的,如下所示:

ISNULL( STUFF(convert(nvarchar(max),E.DESCRIPTION),CHARINDEX('$',convert(nvarchar(max),E.DESCRIPTION)),CHARINDEX('$',convert(nvarchar(max),E.DESCRIPTION))+1,''),convert(nvarchar(max),E.DESCRIPTION)) 

推荐阅读