【发布时间】:2020-01-02 00:07:01
【问题描述】:
在 SSRS 中,我有一个名为 Event_dt 的数据字段,它返回为 Digital,然后是月份,然后是年份。看起来像这样 Digital January 2021 或 Digital May 2019
问题 1: 在一个字段中 - 我需要截断单词 Digital,这样字符串只会显示为 January 2021 或 May 2019
问题2:在我需要评估的第二个字符串中,如果Event_dt 字符串包含单词Digital,那么它应该输出其他内容。我知道 iff(part ... 但我不确定如何在 SSRS 中获取子字符串部分。
【问题讨论】:
-
为什么不在查询中分开这些?如果您有一个字段仅用于字符串的第一部分和单独的日期,那么使用起来会容易得多。
-
我可以把它们分开。但问题是第二个字符串仅在 SSRS 中,评估它的唯一方法是第一个字符串中是否包含单词 Digital。如果我们删除它,我们将无法评估第二部分。
-
如果它们是分开的,它们仍然应该在同一行中出现。这意味着你可以做
=IIF(Fields!FirstString.Value = "Digital", Fields!SomethingElse.Value, Fields!SecondString.Value)。如果这不是数据的布局方式,我可能会误解这个问题。 -
SSRS 中的第二个字符串是硬编码文本。现在他们想要基于 event-dt 字段评估的逻辑。如果日期是数字日期(代码中的标记),则它可能是常规日期或不是常规日期,那么我们希望更改第二个字符串。我们不会忽略它。
标签: string tsql if-statement reporting-services substring