Laravel 使用 join() 查询的查询生成器结果
Laravel Query Builder result using join() query
以下查询工作正常,但问题是它在输出结果中给出了事件的 ID table 而不是任务的 ID table。
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();
试试这个,应该有用
->select('*', 'tasks.id as taskID')->get();
这是因为任务和事件可能 table 都有 id 字段。所以你需要使用单独的查询来指定 id。
试试这个
在此处使用 mysql 别名
Task::join('events', function ($join) {
$join->on('events.task_id', '=', 'tasks.id')
->where('events.event_type', '=', 'Task')
->where('events.task_stage', '!=', 'assigned');
})->select('tasks.*','tasks.id as taskId')->get();
以下查询工作正常,但问题是它在输出结果中给出了事件的 ID table 而不是任务的 ID table。
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();
试试这个,应该有用
->select('*', 'tasks.id as taskID')->get();
这是因为任务和事件可能 table 都有 id 字段。所以你需要使用单独的查询来指定 id。
试试这个
在此处使用 mysql 别名
Task::join('events', function ($join) {
$join->on('events.task_id', '=', 'tasks.id')
->where('events.event_type', '=', 'Task')
->where('events.task_stage', '!=', 'assigned');
})->select('tasks.*','tasks.id as taskId')->get();