php - 使用 laravel 连接查询
问题描述
我真的对 laravel 上的加入感到困惑。
我有一张users
桌子,一张students_subjects
桌子,在students_subjects
表格中我有一subject_id
列和一user_id
列,我试图通过表格获取用户列表,user_id
在students_subjectsteachers_subjects
具有相同的subject_id
列。
我试过了 :
$user_id = Auth::user()->id;
$results = DB::table('users')
->join('students_subjects', 'students_subjects.subject_id', '=', 'teachers_subjects.subject_id')
->where('students_subjects.user_id', $user_id)
->get();
但是我遇到了一些错误……如果有人能告诉我应该怎么做,那就太好了,这样我就可以理解如何在 laravel 上进行连接工作。
结构:
users table :
- id
- name
- last name
students_subjects :
- subject_id
- user_id (users->id)
teachers_subjects :
- subject_id
- teacher_id (users->id)
解决方案
您需要为两个表添加连接:
$user_id = Auth::user()->id;
$results = DB::table('users')
->join('students_subjects', 'users.id', '=', 'students_subjects.user_id')
->join('teachers_subjects', 'students_subjects.subject_id', '=', 'teachers_subjects.subject_id')
->where('students_subjects.user_id', $user_id)
->get();
您可能需要对此进行调整才能准确获得所需的内容。
推荐阅读
- java - 如何在 javafx 的运行时创建一个新的组合框?
- python - 无法访问用 json.dumps(json.loads(input)) 加载的 JSON
- php - 是否可以通过 wordpress 中的标签获取类别的子类别?
- c++ - 如何组织包含模板和朋友混合的类?
- prometheus - 如何将整个 JSON 对象(详细数据)存储到 Prometheus Timeseries 数据库中
- c++ - C++ openssl - 生成 RSA 密钥对并读取
- visio - 以编程方式从形状中获取所有外接连接器
- css - 当焦点/缩放角度5中的特定div/元素时隐藏页面的其他部分
- java - 在 Java 中存储和检索一个动作和多个动词之间的映射的数据结构
- dojo - 在拆分窗格模式下更改 ICN contentViewer 的选项卡标题?