students: id, last_name
1 Robinson
2 Norris
3 Smith
sports: id, title
1 Basketball
2 Baseball
3 Football
students_sports: student_id, sport_id
1 3
1 2
2 1
2 3
3 3
3 1
这个查询查询返回多个记录作为一个字符串
select
last_name, sports.title as sport
from
students s
left join
students_sports ss
on
s.id = ss.student_id
left join
sports
on
ss.sport_id = sports.id
这将返回类似:
last_name sport
Robinson basketball
Robinson baseball
Smith football
Smith baseball
Norris baseball
Norris basketball
我想修改的查询返回的结果是这样的:
last_name sport
Robinson basketball, baseball
Smith football, baseball
Norris baseball, basketball
MySQL的['GROUP_CONCAT()'函数(http://dev.mysql.com/doc/refman/5.0/en/group-by- functions.html#function_group-concat)执行此操作。 – 2012-04-18 15:33:04
搜索SO for GROUP_CONCAT,你会发现很多关于如何使用它的例子。 – 2012-04-18 15:33:43
[MySQL结果为逗号分隔列表]可能的重复(http://stackoverflow.com/questions/662207/mysql-results-as-comma-separated-list) – 2012-04-18 15:34:31