私は次の表を持っています:
ID Data
1 A
2 A
2 B
3 A
3 B
4 C
5 D
6 A
6 B
つまり、IDごとにデータのグループがあります。データグループ(A、B)が複数回発生していることに気付くでしょう。次のように、個別のデータグループを識別して番号を付けることができるクエリが必要です。
DataID Data
101 A
102 A
102 B
103 C
104 D
したがって、DataID 102はデータ(A、B)に似ており、DataID 103はデータ(C)に似ています。元のテーブルを次の形式で書き換えられるようにするには、次のようにします。
ID DataID
1 101
2 102
3 102
4 103
5 104
6 102
どうやってやるの?
PS。最初のテーブルを生成するコード:
CREATE TABLE #t1 (id INT, data VARCHAR(10))
INSERT INTO #t1
SELECT 1, 'A'
UNION ALL SELECT 2, 'A'
UNION ALL SELECT 2, 'B'
UNION ALL SELECT 3, 'A'
UNION ALL SELECT 3, 'B'
UNION ALL SELECT 4, 'C'
UNION ALL SELECT 5, 'D'
UNION ALL SELECT 6, 'A'
UNION ALL SELECT 6, 'B'