我有一张表,假设有 2 个用户,用户 A 和用户 B。用户 A 和用户 B 有一些项目;其中一些项目是相同的,但其中一些是不同的。我想数一数他们有多少共同点。
例如,用户 A 和用户 B 有 2 个共同项目。用户 A 和用户 C 只有一个公共物品。用户 B 和用户 C 有 2 个共同项目,以此类推。
我怎样才能在 SQL 中做到这一点?
Users Items
A C1
A C2
A C3
B C2
B C3
B C4
B C5
C C1
C C4
C C5
C C6
这是我迄今为止尝试过的:
select distinct users, count(items) over (partition by items)
from table1