[英]T-SQL How to return X item of Total items
我有一個表,其中出現這些值:
-------------------------------
Id | Name | Type | Date
-------------------------------
1 | Nick | 1 | 13/11/2020
2 | Peter | 1 | 13/11/2020
3 | Thomas | 2 | 13/11/2020
4 | Mike | 2 | 13/11/2020
5 | Kelly | 3 | 13/11/2020
6 | Nicky | 3 | 13/11/2020
我想作為輸出:
1 | Nick | 1 | 13/11/2020 Type 1/2
2 | Peter | 1 | 13/11/2020 Type 2/2
3 | Thomas | 2 | 13/11/2020 Type 1/1
4 | Mike | 3 | 13/11/2020 Type 1/3
5 | Kelly | 3 | 13/11/2020 Type 2/3
6 | Nicky | 3 | 13/11/2020 Type 3/3
所以我想將每種類型的“行號”與這種類型的總數一起。 我怎樣才能做到這一點?
謝謝。
您可以使用窗口函數:
select t.*,
row_number() over(partition by type order by name) rn,
count(*) over(partition by type) cnt
from mytable t
order by type, name
不清楚您希望如何對具有相同type
行進行排序:這使用列name
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.