首页 文章

如何从两个表中获取数据 - PHP和MySQL

提问于
浏览
1

我在MySQL中有两个表,如下所示:

表1如下:

ID (Primary Key Auto Increment) | Student Name | Age

表2如下:

Teacher Name | Student ID (This is the Student ID from table1) | Email | Education

现在我想在一个查询中从表table1和table2中获取数据 .

我想从两个表中检索学生ID等于某事物的值 .

学生姓名|年龄|老师的名字

您能告诉我如何查询上面提到的两个表中的值 . 我已经阅读了很多教程,但我无法正确检索它 . 我是MySQL的新手,所以请清楚解释一下 . 我应该使用表连接,联合,内部或外部联接?

3 回答

  • 1

    如果表之间没有关系,例如 . 主外键你应该做两个单独的查询 .

    如果要使用连接,则需要在表之间创建关系 . 例如,将教师表链接到学生表的课程ID .

    这样你就可以告诉我X课程中学生和教师的姓名/年龄

  • 1

    试试这个教程here .

    您应该通过在表中使用外键来实现关系 .

    UPDATED 您的查询应该是这样的:

    SELECT t1.StudentName, t1.Age, t2.TeacherName
    FROM table1 t1, table2 t2
    WHERE t1.id = t2.studentid;
    
  • 4

    假设您有像Student(Stud_id,Stud_Name,Stud_Age)这样的表和另一个像Teacher(TeacherName,StudentID,Email,....)的表 . 这里StdentID应该是Teacher中的外键,而Stud_Id应该是Student.We中的主键,假设StudentID和Stud_ID值相同

    试试这个,

    SELECT Stud_Name, Stud_Age ,TeacherName FROM Student INNER JOIN Teacher ON Stud_id = StudentID
    

相关问题