【问题标题】:Is there a way to only select the first comment imputed for each record?有没有办法只选择为​​每条记录估算的第一条评论?
【发布时间】:2022-01-01 10:56:57
【问题描述】:

我有一个由 CommentDateTime、CommentCode、Comment 和 CommentKey 组成的数据集。每个 CommentCode 有多个 cmets,但我只希望为每个 CommentCode 创建的第一个评论显示在我的报告中。

有没有办法做到这一点?

我是 SSRS 的新手,所以如果我没有很好地解释我的问题,我很抱歉。

【问题讨论】:

    标签: ssrs-2008 comments min query-designer


    【解决方案1】:

    除非我遗漏了什么,否则最好在您的数据集查询中执行此操作,以便只返回第一条评论,而不是向报告发送大量数据,然后编写表达式将其过滤掉。

    类似

    SELECT a.CommentDateTime, a.CommentCode, a.Comment, a.CommentKey 
        FROM (
            SELECT 
                    CommentDateTime, CommentCode, Comment, CommentKey,
                    ROW_NUMBER() OVER(PARTITION BY CommentCode ORDER BY CommentDateTime) as RowN
            FROM @myTable
            ) a 
        WHERE a.RowN = 1
    

    这假设 CommentKey 对于每条评论都是唯一的。 其中 a.RowN = 1

    【讨论】:

    • 这非常有效。太感谢了。如果我想将其添加到查询设计器中的现有查询中,我是否会将其设为 Inner JOIN?
    • 这取决于您想要实现的目标,但您需要提出一个新问题才能得到答案。请记住包括您现有的查询、示例数据和预期结果,如果您这样做,有人会很快提供答案。
    • 非常感谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-03
    • 2015-08-25
    • 1970-01-01
    • 1970-01-01
    • 2020-10-16
    相关资源
    最近更新 更多