我有一个用户表、教育表和工作经验表:
用户
教育
workexperience
现在我想了解一个人的所有教育和工作经历。
在使用常规联接时,我将得到很多行,因为教育和工作经验的数量将乘以行数。
最好的情况是,如果我只获得id、first_name和last_name一次,内部还有一个带有教育和工作经验的数组。
谁能给我指个正确的方向吗?
发布于 2013-08-13 08:59:50
尝试使用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本身进行分组。
https://stackoverflow.com/questions/18204767
复制相似问题