gpt4 book ai didi

php - mysql查询fetch all rows匹配用户组只有一个

转载 作者:行者123 更新时间:2023-11-28 23:27:07 25 4
gpt4 key购买 nike

我在mysql数据库中有两个表

1.loc8_users (id,username,password,email,phone)

2.loc8_users_groups (id,user_id,group_id).

此处 loc8_users_groups 存储分配给每个用户的组 ID。

我想从 loc8_users 表中获取用户只有一个组的所有行

最佳答案

请试一试:

SELECT 
U.*
FROM loc8_users U
INNER JOIN
(
SELECT
UG.user_id
FROM loc8_users_groups UG
GROUP BY UG.user_id
HAVING COUNT(DISTINCT UG.group_id) = 1
) AS t
ON U.id = t.user_id

解释:

SELECT 
UG.user_id
FROM loc8_users_groups UG
GROUP BY UG.user_id
HAVING COUNT(DISTINCT UG.group_id) = 1;

此查询仅返回只涉及一个组的那些 user_id

我们得到了那些 user_id 但现在我们需要那些 user_id 的用户信息。因此,在这个查询结果和匹配 user_idloc8_users 表之间创建一个 INNER JOIN 就可以了。

关于php - mysql查询fetch all rows匹配用户组只有一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38842071/

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