Sql server 将每个记录链接到具有增量编号的所有其他记录

Sql server 将每个记录链接到具有增量编号的所有其他记录,sql-server,Sql Server,我有一个SQL Server 2008R2表,其中包含一些用户名。我需要在每个用户和每个其他用户之间创建一个关联,我不知道如何使用连接来实现这一点。另外,我还需要获得一个增量唯一ID。例如,我有以下数据: user_a User Name A user_b User Name B user_c User Name C 我想运行一个查询并获得如下内容: 1 user_a user_a 2 user_a user_b 3 user_a user

我有一个SQL Server 2008R2表,其中包含一些用户名。我需要在每个用户和每个其他用户之间创建一个关联,我不知道如何使用连接来实现这一点。另外,我还需要获得一个增量唯一ID。例如,我有以下数据:

user_a    User Name A
user_b    User Name B
user_c    User Name C
我想运行一个查询并获得如下内容:

1    user_a    user_a
2    user_a    user_b
3    user_a    user_c
4    user_b    user_a
5    user_b    user_b
6    user_b    user_c
7    user_c    user_a
etc...

谢谢

您需要一个
交叉连接
行号()

创建第二个“查找表”user\u assoc,其中包含三列id、user\u id、user\u assoc\u id

这个例子:

1 user_a user_a 2 user_a user_b 3 user_a user_c 4 user_b user_a 5 user_b user_b 6 user_b user_c 7 user_c user_a etc... 1个用户\u a用户\u a 2用户a用户b 3用户a用户c 4用户b用户a 5用户\u b用户\u b 6用户b用户c 7用户c用户a 等 将变成:

1 1 1 2 1 2 3 1 3 4 2 1 5 2 2 6 2 3 7 3 1 8 3 2 9 3 3 1 1 1 2 1 2 3 1 3 4 2 1 5 2 2 6 2 3 7 3 1 8 3 2 9 3 3
然后,您可以在user_id上的users表上运行SQL连接!很好,谢谢。。。我会尽快接受这个答案。谢谢,但我仍然需要使用@Lamak在下面显示的查询来创建第二个表,并且使用该查询不需要额外的表。 1 1 1 2 1 2 3 1 3 4 2 1 5 2 2 6 2 3 7 3 1 8 3 2 9 3 3