重复记录中需要一条记录

need one record in duplicate records

这里是 table:

Activity table

|Place of order|Order NR  | Nr of activity|type of activity| Date of activity|
|01            |1         | 00001         |      1         | Date1           |
|01            |1         | 00002         |      1         | Date1           |
|01            |1         | 00003         |      2         | Date2           |
|02            |1         | 00001         |      1         | Date9           |
|01            |2         | 00001         |      1         | Date4           |
|01            |2         | 00003         |      2         | Date5           |
|01            |2         | 00002         |      3         | Date3           |
|02            |2         | 00001         |      1         | Date10          |
|02            |2         | 00006         |      2         | Date11          |
|02            |2         | 00018         |      2         | Date11          |
|02            |1         | 00002         |      2         | Date1           |

为了唯一性,订单地点和订单号必须在一起, Activity Type 1 is order placed;Activity Type 2 is order dispatched 在这种情况下,还有其他一些不感兴趣的活动。

出现错误(不知道怎么回事)。有几个订单(Place of order and Order Nr.),同一个订单在同一天两次下单出货,但是activity nr.

我正在尝试获取每个订单的 activity 类型 1 和类型 2 的日期以及订单地点和订单编号。

结果应如下所示:

已下订单:

|Place of order|Order NR  | Nr of activity|type of activity| Date of activity|
|01            |1         | 00001         |      1         | Date1           |
|02            |1         | 00001         |      1         | Date9           |
|01            |2         | 00001         |      1         | Date4           |
|02            |2         | 00001         |      1         | Date10          |

对于订单排放:

|Place of order|Order NR  | Nr of activity|type of activity| Date of activity|
|01            |1         | 00003         |      2         | Date2           |
|02            |1         | 00002         |      2         | Date12          |
|01            |2         | 00002         |      2         | Date5           |
|02            |2         | 00006         |      2         | Date11          |

我不知道如何从结果中排除重复项。这意味着我只需要一行(最小 activity 数字的行)。

请试试这个:

  ;with cte as(
    select rank() over(order by [Nr of activity] ) as rid , * from TableName
    ) select * from cte where rid=1