我有一个用户表、教育表和工作经验表:
用户
- ID
- 名
- 姓
教育
- 用户身份
- 姓名
- 开始年
- end_year
工作经验
- 用户身份
- 姓名
- 开始年
- end_year
现在我想对一个人的所有教育和工作经验有一个很好的了解。
当使用常规连接时,我会得到很多行,因为教育和工作经验的数量会成倍增加行数。
最好的情况是,如果我只获得一次 id、first_name 和 last_name,并且其中包含另一个包含教育和工作经验的数组。
谁能指出我正确的方向?
试试GROUP BY
喜欢
SELECT users.*,
workexperience.*,
education.start_year as EDU_start_year,education.end_year as EDU_end_year
FROM users
JOIN education ON education.user_id = users.id
JOIN workexperience ON workexperience.user_id = users.id
GROUP BY id,first_name,last_name
你也可以id
自己分组。