PHP/MySQL 从 user_to_group 表中查找所有 groupid

标签 php mysql

我拥有这个数据库:

db: users
userID | username
1 | user1
2 | user2
3 | user3

db: group
groupID | groupName
1 | Admin
2 | Moderator
3 | Guest
4 | VIP

db: user_to_grouo
userID | groupID
1 | 1
1 | 2
1 | 4
2 | 2
2 | 4
3 | 4

和一个带有用户 ID 数组的变量。现在我想要一个包含所有用户 ID 所在的所有 GroupID 的结果。

两个结果示例:

$userIDs = array(1,2,3); //Result: 4

$userIDs = array(1,2); //Result: 2, 4

我怎样才能找到这个?

最佳答案

尝试这个查询

    $array=array(1,2,3);
    $count=  count($array);

    $query="select groupId from user_to_group where userId in (".  implode(',', $array).") group by 
            groupId having count(groupId) =".$count;

关于PHP/MySQL 从 user_to_group 表中查找所有 groupid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31227031/

相关文章:

mysql - hibernate 无法读取另一台服务器保存的条目

php - 通过 PHP 中的 SQL 查询列出所选标签中的选项

javascript - 解析数据 PHP JSON 到 Ajax - 我错过了什么吗?

python - 在 Flask 中使用 MySQL

php - 合并两个没有任何相似值的表(MySQL + PHP)

mysql - SQL INNER JOIN 修复

php - 如何遍历表中的行

php - 使用 $this->referer() 的 cakePHP 重定向无法正常工作

php - 自定义 WordPress 小部件包装了其下方的所有其他小部件

PHP-FFMpeg 允许多个输入