我有一种情况,我需要根据表中的设置和序数集仅显示顶行。
下面的示例数据集显示了两个客户;每个客户都有不同的产品。由于NumRowsToShow
是“1”,我只想为每个客户显示一行(基于序数的第一行)。
| CustomerID | ProductID | Ordinal | NumRowsToShow |
+------------+-----------+---------+---------------+
| 1 |A |1 |1 |
| 1 |B |2 |1 |
| 1 |C |3 |1 |
| 5 |D |1 |1 |
| 5 |E |2 |1 |
| 5 |F |3 |1 |
查询运行后的结果集应该是
| CustomerID | ProductID |
+------------+-----------+
| 1 |A |
| 5 |D |
在相同的场景中,如果NumRowsToShow
customerID 1 为 1,CustomerID 5 为 2,我会看到类似的东西。
| CustomerID | ProductID | Ordinal | NumRowsToShow |
+------------+-----------+---------+---------------+
| 1 |A |1 |1 |
| 1 |B |2 |1 |
| 1 |C |3 |1 |
| 5 |D |1 |2 |
| 5 |E |2 |2 |
| 5 |F |3 |2 |
查询运行后的结果集应该是
| CustomerID | ProductID |
+------------+-----------+
| 1 |A |
| 5 |D |
| 5 |E |
如何才能做到这一点?
包括一个实际结果集的屏幕截图,其中包含我试图过滤的内容的亮点,这可能会有所帮助。
(来源:harpernet.net)