我对 SSRS/SQL 查询不太熟悉,需要编写一份报告,提取按人员分配的百分比,然后与工资表进行比较以分配工资。这些分配每季度更改一次,但所有分配继续存储在表中。如果人员分配没有改变,他们不会在表中获得新条目。这是一个名为 Allocations 的示例表。
名字 | 姓氏 | 日期 | 区域 | 百分比 |
---|---|---|---|---|
史密斯 | 鲍勃 | 01/01/20 | A | 50.00 |
史密斯 | 鲍勃 | 01/01/20 | B | 50.00 |
Doe | 简 | 01/01/20 | A | 25.00 |
Doe | 简 | 01/01/20 | B | 25.00 |
Doe | 简 | 01/01/20 | C | 50.00 |
Doe | 简 | 04/01/20 | A | 35.00 |
Doe | 简 | 04/01/20 | C | 65.00 |
韦恩 | 布鲁斯 | 01/01/20 | A | 100.00 |
韦恩 | 布鲁斯 | 04/01/20 | B | 100.00 |
查询时我希望从这个示例表中得到的结果是:
名字 | 姓氏 | 日期 | 区域 | 百分比 |
---|---|---|---|---|
史密斯 | 鲍勃 | 01/01/20 | A | 50.00 |
史密斯 | 鲍勃 | 01/01/20 | B | 50.00 |
Doe | 简 | 04/01/20 | A | 35.00 |
Doe | 简 | 04/01/20 | C | 65.00 |
韦恩 | 布鲁斯 | 04/01/20 | B | 100.00 |
但是,我还想通过将它与用户输入的日期进行比较来提取它,以便他们可以在任何时间点运行此报告并获得正确的“最大”日期。因此,例如,如果这里也有 7/1/20 日期,但用户输入的日期是 6/30/20,我不想提取 7/1/20 数据。换句话说,我想按名称提取具有最大日期的行,而不会超过用户的输入日期。
您知道实现此目标的最佳方法吗?
预先感谢您提供的任何建议。