如何添加这两个表来显示laravel中的两个值?

时间:2017-11-04 09:26:13

标签: laravel

如何在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',

1 个答案:

答案 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