Php 使用左连接的laravel查询有什么问题?
我正在从事一个laravel项目(laravel 6.8)。我有一个位置表和一个仪表板表。我正在尝试构建一个查询,该查询将从dashboards表返回所有匹配的记录。查看另一个SO question(),我看到了类似的需求,并尝试调整代码以满足我的需求,但仍然不起作用。 这就是我现在拥有的Php 使用左连接的laravel查询有什么问题?,php,laravel,Php,Laravel,我正在从事一个laravel项目(laravel 6.8)。我有一个位置表和一个仪表板表。我正在尝试构建一个查询,该查询将从dashboards表返回所有匹配的记录。查看另一个SO question(),我看到了类似的需求,并尝试调整代码以满足我的需求,但仍然不起作用。 这就是我现在拥有的 $locations = DB::table('locations') ->selectRaw("site_name, COUNT(DISTINCT client) as cl
$locations = DB::table('locations')
->selectRaw("site_name,
COUNT(DISTINCT client) as client_count,
GROUP_CONCAT(client_lob) as lobs,
COUNT(DISTINCT client_lob) as lob_count,
SUM(agent_workstations) as aw_sum,
SUM(production_support_workstations) as psw_sum,
locations.*" )
->leftJoin('dashboards', 'locations.id', '=', 'dashboards.location_id')
->whereNotNull('latitude')
->groupBy(['site_name'])
->orderBy('site_name', 'asc')
->get();
它只从位置返回数据,不从仪表板返回任何内容。我看不出这个问题出了什么问题。有人能提供一些建议吗?因为您从不选择仪表板的字段,请尝试如下选择仪表板的字段:
$locations=DB::table('locations')
->选择原始(“站点名称,
将(不同的客户端)计数为客户端计数,
作为lob的集团公司(客户公司),
将(不同的客户端\u lob)计数为lob\u计数,
金额(代理工作站)为aw金额,
SUM(生产支持工作站)作为psw SUM,
位置。*,仪表板.column1,仪表板.column2”)
因为您从不选择仪表板的字段,所以我需要结束它,然后睡觉@TsaiKoga,回答而不是评论,我会接受的。我不知道我是怎么漏掉的。表仪表板中的字段名是什么?或者你想从仪表板上得到什么字段?@TsaiKoga,不,你是对的。这就是我所缺少的。我完全忽略了这一点。如果你能把你的评论变成一个答案,我会接受。我已经发布了。