加入ERROR的问题:1054

时间:2017-08-02 10:23:34

标签: laravel laravel-5.4 lumen-5.4

我尝试使用join,并将数组作为条件:

$task = Task::join('oc_groups', function($join) use ($filter) {
    foreach($filter['groups']['data'] as $key => $value) {
        $join->on('oc_groups.id', $value); 
    }
}); 

但我收到错误消息:

  

SQLSTATE [42S22]:未找到列:1054'on子句'中的未知列'1'(SQL:选择oc_tasks.title作为task_title,来自oc_tasks内连接oc_groups on oc_groups.id = 1,其中oc_tasks.task_date介于2017- 07-01和2017-07-31)

1$value的内容。我做错了什么? - 表格oc_groups有一个名为id的字段。

1 个答案:

答案 0 :(得分:1)

由于您在这两个表之间没有任何关系,因此请尝试不加入。像这样

select `oc_tasks`.`title` as `task_title` from `oc_tasks` ,`oc_groups`  
where `oc_tasks`.`task_date` between 2017-07-01 and 2017-07-31 and `oc_groups`.`id` = `1`