gpt4 book ai didi

mysql查询查找集合哪个元素与另一个集合元素匹配

转载 作者:行者123 更新时间:2023-11-29 22:25:03 25 4
gpt4 key购买 nike

我的表格如下格式

用户表

> id  username  interest_ids
> 1 Ram 1,2,3
> 2 Suja 2,3,
> 3 Rahul 2,4,5,6
> 4 nipa 1,4,6

兴趣表

id   name
1 Music
2 Book
3 News
4 T.V watching
5 Song
6 Dancing
7 Game

现在我想搜索有相同兴趣的用户。示例 Nipa 是兴趣 ID 为 1,4,6 的用户兴趣 ID 与用户 Ram (id 1) 和 Rahul(id 3) 匹配

什么是 mysql 查询,以便我可以获取具有类似兴趣 ID(例如 nipa)的用户。

最佳答案

如果您的表已正确标准化(它们应该是!这样做!)并且您有一个如下所示的 user_interests 表:

create table user_interests (
user_id integer,
interest_id integer
);

那么你的答案是:

select distinct username
from users u
inner join user_interests ui
on u.id = ui.user_id
where ui.interest_id in
(select ui2.interest_id
from users u2
inner join user_interests ui2
on u2.id = ui2.user_id
where u2.username = 'Nipa'
)
and u.user_name <> 'Nipa'

就目前情况而言,如果不付出大量努力,mysql 就无法分割字符串,最好花在修复表上。

Here's an example

关于mysql查询查找集合哪个元素与另一个集合元素匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30347125/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com