有没有办法只选择为每条记录估算的第一条评论?
Posted
技术标签:
【中文标题】有没有办法只选择为每条记录估算的第一条评论?【英文标题】: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 创建的第一个评论显示在我的报告中。
有没有办法做到这一点?
我是 s-s-rS 的新手,所以如果我没有很好地解释我的问题,我很抱歉。
【问题讨论】:
【参考方案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? 这取决于您想要实现的目标,但您需要提出一个新问题才能得到答案。请记住包括您现有的查询、示例数据和预期结果,如果您这样做,有人会很快提供答案。 非常感谢!以上是关于有没有办法只选择为每条记录估算的第一条评论?的主要内容,如果未能解决你的问题,请参考以下文章