在行之间找到共同的价值

ROA*_*OAL 2 sql-server

我有以下带有示例值的表结构:

Number      Reference                 Length                                  Quantity
----------- ------------------------- --------------------------------------- ----------
16002983    ASH 14                    383.000000                              4
16002983    ASH 14                    1669.000000                             4
16002983    GLAS-NP                   403.000000                              1
16003002    SZR 16                    1402.000000                             1
16003002    Energy Surcharge F        56556.680000                            1
16003256    SZR 14                    726.000000                              1
16003256    Energy Surcharge F        40706.820000                            1
16003256    7283-ASB                  726.000000                              1
16003308    ASH 14                    740.000000                              4
Run Code Online (Sandbox Code Playgroud)

截至目前,该表有 742 个条目,并且每天都在扩展。

我需要找到一个Reference在所有Numbers之间共享的,如果有的话。

如何?我甚至不知道我是否需要JOINS, GROUP BY,别的东西吗?我似乎在逻辑上失败了。

任何帮助表示赞赏。

And*_*y M 5

按引用分组,计算每组中不同的数字,并将其与表中不同数字的总数进行比较:

SELECT
  Reference
FROM
  dbo.atable
GROUP BY
  Reference
HAVING
  COUNT(DISTINCT Number) = (SELECT COUNT(DISTINCT Number) FROM dbo.atable)
;
Run Code Online (Sandbox Code Playgroud)