我有下表:
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'