首页 > 解决方案 > Laravel Query Builder 结果使用 join() 查询

问题描述

以下查询工作正常,但问题是它在输出结果中给出了事件表的 id 而不是任务表的 id。

Task::join('events', function ($join) {
    $join->on('events.task_id', '=', 'tasks.id')
        ->where('events.event_type', '=', 'Task')
        ->where('events.task_stage', '!=', 'assigned');
})->select('tasks.*')
->get();

标签: laravellaravel-query-builder

解决方案


试试这个,应该可以的

->select('*', 'tasks.id as taskID')->get();

这是因为可能任务和事件表都有 id 字段。所以你需要使用单独的查询来指定 id。


推荐阅读