SQL-Server组由[关闭]

问题描述 投票:-4回答:1

任何人都可以帮助查询以下内容?

+-----------+-------------+---------+-------+--------+
|  Ticket#  |    Route    |  Pairs  | Date  | Coupon |
+-----------+-------------+---------+-------+--------+
| 123456789 | JFK-LAX-JFK | JFK-LAX | 01Jan |      1 |
| 123456789 | JFK-LAX-JFK | LAX-JFK | 02Feb |      2 |
| 987654321 | LHR-MAN-LHR | LHR-Man | 10Mar |      1 |
| 987654321 | LHR-MAN-LHR | MAN-LHR | 20Apr |      2 |
+-----------+-------------+---------+-------+--------+

返回:

+-----------+-------------+---------+-------+--------+
|  Ticket#  |    Route    |  Pairs  | Date  | Coupon |
+-----------+-------------+---------+-------+--------+
| 123456789 | JFK-LAX-JFK | JFK-LAX | 01Jan |      1 |
| 987654321 | LHR-MAN-LHR | LHR-Man | 10Mar |      1 |
+-----------+-------------+---------+-------+--------+
sql-server
1个回答
1
投票

你可以使用row_number()

select t.*
from (select t.*
             row_number() over (partition by ticket, route order by date) as seq
      from table t
     ) t
where seq = 1;
© www.soinside.com 2019 - 2024. All rights reserved.