我有一个场景让“最大”和“最小”记录的各字段值 请在下面找到最大和最小值的相应记录
-----------------------------------------------------------------------
ID Label ProcessedDate
-----------------------------------------------------------------------
1 Label1 11/01/2016
2 Label2 11/02/2016
3 Label3 11/03/2016
4 Label4 11/04/2016
5 Label5 11/05/2016
样本数据我有“ID”字段中填充在另一个表中作为外键。在根据“ID”字段查询该表中的记录时,我需要获取“最大”处理日期和“最小”处理日期的“标签”字段。
-----------------------------------------------------------------------
ID LabelID GroupingField
-----------------------------------------------------------------------
1 1 101
2 2 101
3 3 101
4 4 101
5 5 101
6 1 102
7 2 102
8 3 102
9 4 102
而最终结果集我期望它看起来像这样。
-----------------------------------------------------------------------
GroupingField FirstProcessed LastProcessed
-----------------------------------------------------------------------
101 Label1 Label5
102 Label1 Label4
我'几乎'设法使用rank函数得到上述结果,但仍然不满意它。所以我在寻找是否有人可以为我提供更好的选择。
感谢, Prakazz
是的,看起来不错!我有几乎相同的东西只是缺少的东西是我没有使用CTE和一个额外的分组层次的groupingID。无论如何感谢那! – Prakazz