如何創建具有特定列中出現次數的新列(inCount)? 下面是一個例子:如何使用SQL創建事件的內部編號
id name inCount
1 Orly 1
2 Ernest 1
3 Rachel 1
4 Don 1
5 Don 2
6 Ernest 2
7 Angela 1
8 Ernest 3
9 David 1
10 Rachel 2
11 Sully 1
12 Sully 2
13 Rachel 3
14 David 2
15 David 3
16 Kevin 1
17 Kevin 2
18 Orly 2
19 Angela 2
20 Sully 3
21 Kevin 3
22 Don 3
23 Orly 3
24 Angela 3
唐從ID 5的編號爲2,因爲唐出現在ID 4太。 由於上述情況,編號爲22的編號爲3。
我使用MS SQL SERVER 2008 R2 Express版本。
謝謝。
他將通過'id'命令,而不是'name'來獲得所需的編號。按'name' _may_排序(如in,行爲可能未定義)會導致不同的'id'被給定的遞增的'inCount'標記。 –
@ X-Zero - 我自己很擔心,但是我進行了一次快速測試,只要順序被指定用於選擇,結果就不會受到影響。我可以看到結果可能不是100%,所以我同意 - 它應該是row_number子句中的id。 – Leons