mysql单元组多元组_mysql – 如何通过多个元组(行)找到共享一个属性(列)的对?...

我试图在这个简化的例子中找到喜欢同一组电视节目的用户对

假设我有一张桌子,每个用户都可以获得他们喜欢的每个电视节目的参赛作品:

|USER | Show |

|-----|-------------|

|001 | Lost |

|001 | South Park |

|002 | Lost |

|003 | Lost |

|003 | South Park |

|004 | South Park |

|005 | Lost |

|006 | Lost |

然后我想得到一个结果:

|USER1 |USER2 |

|------|------|

|001 |003 |

|003 |001 |

|002 |005 |

|002 |006 |

|005 |002 |

|005 |006 |

|006 |002 |

|006 |005 |

或者更好的版本是:

|USER1 |USER2 |

|------|------|

|001 |003 |

|002 |005 |

|002 |006 |

|005 |006 |

基本上说:用户1喜欢与用户3相同的节目集.

我一直在玩GROUP BY和JOIN,但我仍然找不到答案:(.

到目前为止,我发现使用了

SELECT s1.User as USER1,s2.User as USER2,s1.Show as Show

FROM Shows s1 JOIN (SELECT * FROM Shows) s2

ON s1.Shows=s2.Shows AND s1.User!=s2.User;

这产生了成对的用户和他们共同的展示.但我不知道从哪里开始.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值