SQL查找具有指定值

时间:2016-02-01 12:21:20

标签: sql sql-server

MSSQL:我有这个示例数据:

NAME    AValue   BValue
A       1        11
B       1        11
C       2        11
D       2        21
E       3        21
F       3        21
G       4        31
H       4        31
I       5        41
J       5        NULL
...

我正在寻找algorhitm,它查找由不同种子(AValue和Bvalue)的值关闭的所有名称,在这种情况下种子由AValue给出2,Bvalue给出3,但是这可以跳过并在后面给出所以,不仅要寻找最小的倍数)。在这种情况下,输出应为1,2,3,4,11,21,31作为第一组/结果。然后可以更新具有这些值的所有名称等。

我需要通过不同的种子找出值的“闭环”中的所有名称。

编辑: (尝试更简单的例子)

想象一下,你有名单。每个名称都有两个数字。在大多数情况下,这些数字是由一些种子给出的(在这个例子中AValue给出两次,BValue三次),但是有些数字可以跳过,所以你不能只计算这些不同种子的最小倍数(在这种情况下,它将是2x3,你有6个名字已关闭组,其中没有名字包含下一个/不同组的AValue或BValue)。例如,名称A具有1和11. 1给出A和B,11给出A,B,C。这些名称具有1,2,11,21。所以你检查2和21,然后你得到E和F,然后检查循环应该继续,但只要不再包含名称,应该输出1,2,3,11,21。 “封闭圈”

0 个答案:

没有答案