[英]MySQL SELECT statement to retrieve field value that is unique
例如
id staff_id skill_id mainskill
1 1 24 1
2 1 24 0
3 1 7 0
4 4 24 0
5 4 18 0
6 6 8 0
7 6 18 1
我希望结果只包含一个在所有数据中只出现一次的skill_id的元组。 换句话说,我想检索包含仅由一名工作人员拥有的skill_ids的元组。
所以期望的输出是:
id staff_id skill_id mainskill
3 1 7 0
6 6 8 0
提前致谢 :)。
您可以使用GROUP BY
和HAVING
,如下所示:
SELECT
MAX(id) as id,
MAX(staff_id) as staff_id,
skill_id,
MAX(mainskill) as mainskill
FROM MyTable
GROUP BY skill_id
HAVING COUNT(1)=1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.