【发布时间】:2018-12-05 21:08:53
【问题描述】:
我有一个表,其值如下:
|---------------------|------------------|
| USER | ITEM |
|---------------------|------------------|
| Abel | 1 |
|---------------------|------------------|
| Abel | 2 |
|---------------------|------------------|
| Bart | 1 |
|---------------------|------------------|
| Bart | 2 |
|---------------------|------------------|
| Curt | 3 |
|---------------------|------------------|
| Curt | 4 |
|---------------------|------------------|
| Dawn | 5 |
|---------------------|------------------|
| Emma | 5 |
|---------------------|------------------|
| Emma | 6 |
|---------------------|------------------|
| Emma | 7 |
|---------------------|------------------|
| Fina | 6 |
|---------------------|------------------|
从该表中,我只想选择未遵循的:
USERS 自己只能拥有一项。
USERS 只有在与另一位 USER 一起拥有的情况下才能拥有多个 ITEM。
一组用户只能有一个共同的项目。
接下来:
- Fina 只有 1 项,她还好,不应该包括在内。
- Emma 有 3 件物品,但其中两件是与不同的用户共享的,所以她OK,不应该包括在内。
- Dawn 只有 1 项,她还好,不应该包括在内。
- Curt 有 **2 件物品,他不行,应该包括在内
- Bart 和 Abel 有 2 个共同点,它们 NOT OK 应该包括在内。
这可以通过 SQL 实现还是我需要用另一种语言编写脚本?
至少我需要知道不正常的用户数
最佳情况,包含错误的项目列表的表格
【问题讨论】: