第一次查询3个mysql表

第一次查询3个mysql表,mysql,Mysql,我想寻求帮助。我有三张桌子 学生姓名 学生们有自己的科目 主题 查询3个表以显示学生id、学生姓名、学生所在的学科以及学科描述的sql语句是什么 我想要两种类型的记录显示 首次展示 1, Paul Mark, Math, Mathematics, Mathematics 1, Paul Mark, English, English Language 1, Paul Mark, Science, About Science 2, John Mark, Math, Mathematics, Math

我想寻求帮助。我有三张桌子

学生姓名 学生们有自己的科目 主题 查询3个表以显示学生id、学生姓名、学生所在的学科以及学科描述的sql语句是什么

我想要两种类型的记录显示

首次展示

1, Paul Mark, Math, Mathematics, Mathematics
1, Paul Mark, English, English Language
1, Paul Mark, Science, About Science
2, John Mark, Math, Mathematics, Mathematics
2, John Mark, English, English Language
2, John Mark, Science, About Science
第二显示器

1, Paul Mark, Math, English, Science
2, John Mark, Math, English, Science
下面是3个表样本及其记录。非常感谢

students_name table
student_id, student_name
1, Paul Mark
2, John Mark

students_has_subjects
id, stud_name, stud_subject

1, Paul Mark, 1
2, Paul Mark, 2
3, Paul Mark, 3
4, John Mark, 1
5, John Mark, 2
6, John Mark, 3

Subjects
subject_id, subject_name, description

1, Math, Mathematics
2, English, English Language
3, Science, About Science

您必须使用2个联接来链接这3个表。 内部联接意味着只列出那些元组,每个表中都有一个正确的元组。没有科目或科目ID错误的学生将不会被列出

请记住,访问X个科目的学生也会列出X次

选择n.student\u id、n.student\u name、s.subject\u name、s.description FROM student\u name n internal JOIN student\u在shs上有主题shs.stud\u name=n.student\u name在shs.stud\u subject=s.subject\u id上有主题shs


如果是你的家庭作业,请把它标记为一个

你试过什么?提供作业的直接回复是违反本网站的性质的。这是作业吗?如果是,请贴上标签。一个提示是:要获得一个逗号分隔的主题列表,您将需要GROUP_CONCATNormalization在这里有点奇怪,在students_name和students_has_subjects之间键入学生姓名,而不是键入student_id。如果您有能力更改此模式,我建议您这样做抱歉,伙计们,但这不是家庭作业。这是我的学校记录项目的一部分。我将尝试这个建议并发布结果。谢谢。