thinkphp 多对多表查询

1.表

  班级表classes

 thinkphp 多对多表查询_第1张图片thinkphp 多对多表查询_第2张图片

学生表student

thinkphp 多对多表查询_第3张图片

中间表classes_students

thinkphp 多对多表查询_第4张图片

2。使用模型关联查询

   新建模型

   Classes在里面添加代码

   ClassesStudent中间表模型,可以不写什么

   Student在里面添加代码

   获取student所在的历史班级

   $classes=StudentModel::get(1)->classes;直接获取

2.使用db查询

thinkphp 多对多表查询_第5张图片

3.原生查询

  $list=db->query('
        select student.*,classes.year,classes.grade,classes.class_no
        from student
        join classes_students
        on student.id=classes_students.student_id
        join classes
        on class_id=classes.id
        where classes.year=2018
');    

 

 

 
 

 

 

 

 

 

 

  

你可能感兴趣的:(thinkphp 多对多表查询)