【发布时间】:2016-06-04 06:17:21
【问题描述】:
以下三个 SQL 表描述了谁属于哪个组。例如,Ann 属于 A/B 组,Ben 属于 B/C 组,Chris 属于 A/C 组。
现在,当我想搜索“Ann 和 Ben 都属于的组”时,我们应该如何编写 SELECT 查询?还是我们应该以不同的方式设计这些表格?
(1) 个用户
+-----------+------------------+
| member_id | member_name |
+-----------+------------------+
| 1 | Ann |
| 2 | Ben |
| 3 | Chris |
+-----------+------------------+
(2) 组
+-----------+------------------+
| group_id | group_name |
+-----------+------------------+
| 1 | Group A |
| 2 | Group B |
| 3 | Group C |
+-----------+------------------+
(3) 个用户组
+-----------+------------------+
| group_id | user_id |
+-----------+------------------+
| 1 | 1 |
| 2 | 1 |
| 2 | 2 |
| 3 | 2 |
| 1 | 3 |
| 3 | 3 |
+-----------+------------------+
【问题讨论】: