MS Report Builder 表中按记录 ID 的最小和最大日期

问题描述

我正在使用一个数据库,该数据库存储在特定时间段内与我的雇主接触的个人记录,他们的记录每 10 天左右更新一次。但是数据库不存储他们的初始订婚日期,除非在初始记录中。我需要使用 Microsoft Report Builder 3.0 生成一个表格,显示一个人的所有记录和初始参与日期。

这是我的简单 SELECT 查询返回的示例。 (而且它们确实是简单的查询——从一个表中选择大约六个字段,其中一个条件为真。)

客户 ID 会话日期 记录创建日期
5678 4/1/2019 4/4/2019
5678 4/1/2019 4/24/2019
5678 4/1/2019 5/5/2019
5678 4/1/2019 5/25/2019
5678 4/1/2019 6/6/2019
5678 4/1/2019 6/26/2019
5678 10/8/2020 10/10/2020
5678 10/8/2020 10/30/2020
5678 10/8/2020 11/21/2020
5678 10/8/2020 12/01/2020
54321 7/7/2020 7/9/2020
54321 7/7/2020 7/29/2020
54321 7/7/2020 8/8/2020
54321 7/7/2020 8/28/2020
54321 7/7/2020 9/7/2020
54321 7/7/2020 9/27/2020

这是我希望结果的示例。

客户 ID 会话日期 记录创建日期 最小创建 最大创建
5678 4/1/2019 4/4/2019 4/4/2019 6/26/2019
5678 4/1/2019 4/24/2019 4/4/2019 6/26/2019
5678 4/1/2019 5/5/2019 4/4/2019 6/26/2019
5678 4/1/2019 5/25/2019 4/4/2019 6/26/2019
5678 4/1/2019 6/6/2019 4/4/2019 6/26/2019
5678 4/1/2019 6/26/2019 4/4/2019 6/26/2019
5678 10/8/2020 10/10/2020 10/10/2020 12/01/2020
5678 10/8/2020 10/30/2020 10/10/2020 12/01/2020
5678 10/8/2020 11/21/2020 10/10/2020 12/01/2020
5678 10/8/2020 12/01/2020 10/10/2020 12/01/2020
54321 7/7/2020 7/9/2020 7/9/2020 9/27/2020
54321 7/7/2020 7/29/2020 7/9/2020 9/27/2020
54321 7/7/2020 8/8/2020 7/9/2020 9/27/2020
54321 7/7/2020 8/28/2020 7/9/2020 9/27/2020
54321 7/7/2020 9/7/2020 7/9/2020 9/27/2020
54321 7/7/2020 9/27/2020 7/9/2020 9/27/2020

通过使用连接客户 ID 和会话日期字段的变量,然后使用以下表达式添加另外两个变量,我能够在 Business Objects 中实现此目标: =Min([Submitted Date]) In ([ConcatenateCustomerSession]) =Max([Submitted Date]) In ([ConcatenateCustomerSession])

有什么想法吗?如果可以,我更愿意将其作为计算字段来执行,因为我更喜欢使用表达式而不是 sql 代码,但在这一点上,我会采取一切措施来完成工作。

解决方法

这在 SQL 中很简单。在现有的 select 语句中添加另外两列

,Min([Record Created Date]) Over (Partition by [Customer ID]) as [Min Created],Max([Record Created Date]) Over (Partition by [Customer ID]) as [Max Created]

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...