任何人都可以帮助我吗?
我有两个表,它们由student_id链接。
我正在寻找一个更清洁/单一的查询,可以输出下面的样本,
虽然我通过插入另一个查询(用于主题的group_concat)来实现这一点
在while循环查询部分和名称。
table_students
student_id,section,name
table_subjects
student_id,主题
现在我希望输出像这样。
student_id section name subject
100 A john algebra, trigo, geometry
101 A peter trigo, geometry,
102 B alice literature, algebra
103 B james trigo
提前谢谢。
顺便说一句,我忘了提供一些细节, 在我的科目表中,受试者是每排,就像这样student_id subject
100 algebra
100 tigo
100 geometry
101 trigo
101 geometry
102 literature
and so on.....
答案 0 :(得分:4)
SELECT
stud.section, stud.name, group_concat(subj.subject, '')
FROM table_students stud
JOIN table_subjects subj
ON stud.student_id = subj.student_id
GROUP BY stud.name
答案 1 :(得分:0)
试试这个MySQL查询:
SELECT stu.section, stu.name, sub.subject
FROM table_students stu, table_subject sub
WHERE stu.student_id=sub.student_id
GROUP BY stu.section
应该完全按照您的需要做。在两个表中按student_id选择相关数据,然后指定要返回的字段。最后,按部分对它们进行分组。