考虑以下数据表:
FirstName | LastName | Department | 史蒂夫 | 科尔顿 | 会计 |
---|---|---|
史黛西 | 贝克汉姆 | 金融 |
梅西 | 金融 | |
科尔顿 | 为 | |
Gretsky | 金融 |
您可以使用row_number()
。如果希望每个名字对应一行(如问题所示),则:
select t.*
from (select t.*,
row_number() over (partition by firstname order by department) as seqnum
from MyTable
) t
where seqnum = 1;
这将选择"Accounting"在"Finance"副本。