mysql - 如何在mysql中只返回唯一值

标签 mysql sql database unique

SELECT users.mail, users.name FROM members
LEFT JOIN users ON (users.uid = members.uid) WHERE members.group = 27
AND members.uid NOT IN (SELECT subgroup_members.uid FROM subgroup_members
LEFT JOIN subgroups ON (subgroups.id = subgroup_members.sid)
LEFT JOIN users on (users.uid = subgroup_members.uid) WHERE subgroups.oid = 27 AND subgroup_members.leader = 1)

此查询返回不是子组领导者的组的所有成员。

members表显示了哪个userid(uid)属于一个group(group)subgroup_members表显示了哪些用户属于一个 subgroup(sid)。领导在 subgroup_members 表的领导列中用“1”表示。

我正在尝试弄清楚如何返回不是子组的唯一领导者的组的所有成员,我现在很困惑。

因此,我需要确定它是否是唯一值,而不是 subgroup_members.leader = 1

最佳答案

考虑使用 GROUP BY 来隔离唯一索引。

文档:https://dev.mysql.com/doc/refman/5.5/en/group-by-modifiers.html

关于mysql - 如何在mysql中只返回唯一值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11565621/

相关文章:

.net - 双跃点 SQL 委托(delegate)不起作用

php - 使用 PHP 存储 JSON 值

php - mysql左调整类型特性

php - Laravel 5 如何在 select 子句中使用 Carbon 转换日期相关列?

SQL-当值为1时获取列名

php - MySQL/PHP新闻系统

mysql - 当插入到 MySQL 中的另一个表时,通过自动递增连接多个表值

mysql - 过期日期作为 TIMESTAMP 列的默认值

Mysql - 可以使用 Group By semester 吗?

mysql - 数据库设计 : EAV options?