如何在laravel中将这两个表添加到显示值?
模块表:
id | code | semester | name | description | lecturer_id
考试表:
id | module_id | name | startdate | enddate | duration | type | code | status
我想显示以下内容:
ModuleCode | ModuleName | Title | Date | Type | Duration | Code | Status
但我得到了这些:
Title | Date | Type Duration | Code | Status | Action
我尝试了什么:
$examinations = DB::table('modules')
->select('modules.name as modulename', 'modules.code as modulecode')
->leftjoin('examination', 'modules.id', '=', 'examination.module_id')
->get();
$examinations = Examination::select('examination.name', 'examination.startdate', 'examination.enddate', 'examination.duration', 'examination.type', 'examination.code', 'examination.status', 'examination.id')
->leftjoin('modules', 'modules.id', '=', 'examination.module_id')->get();
$examinations = Module::join('examination', 'modules.id', '=', 'examination.module_id')
->select('modules.name as modulename', 'modules.code as modulecode', 'examination.name', 'examination.startdate',
答案 0 :(得分:0)
Module::select([
'modules.code as ModuleCode,
'modules.name as ModuleName,
'examination.name as Title',
'examination.startdate as Date',
'examination.type as Type',
'examination.duration as Duration',
'examination.code as code',
'examination.status as Status',
'])->join('examination', 'modules.id', '=', 'examination.module_id')->get();
如果可能没有对模块进行检查但仍需要来自Module的数据,请使用leftJoin
。如果您只想通过检查查看数据,请使用join
。