我有6张表,其中都包含学生信息。 表格名称:学生详细信息,医生详细信息,入学详细信息,previous_school,父亲详细信息,母亲详细信息。 每个表都包含一个唯一的ID。
要将所有这些表合并为一个,我有一个student_info表,其中包含上述6个表中的所有id。这些链接到相应表中的唯一ID。
我需要显示所有学生信息,我知道我会使用左连接和右连接,我只是不确定mysql如何读取student_info表中的id并从相应的表中获取所有信息,允许用户查看所有一种形式的学生信息。
提前谢谢你。答案 0 :(得分:0)
编辑: http://sqlfiddle.com/#!2/c5489/2(工作示例)
您不需要在每个表中放置所有id
,而是每个表都有自己的主键ID - 保证是唯一的,并且您很可能使用{加入每个表{1}}
inner join
然后使用要加入的相关ID选择所需的数据:
Table A(user_id int, user_name varchar(255))
Table B(student_id int, student_email varchar(255))
答案 1 :(得分:0)
您必须指定连接才能使其工作:
select * from student, student_info where student_info.student_id = student.id
这告诉服务器返回两个表中的所有信息,其中学生ID与学生信息存储的学生ID相匹配。
在这里,我假设学生是1:很多,有student_info(其中至少有一个,但每个学生信息可以有多个学生信息行)。