如何使用Model类在Laravel 5.2中编写相关的子查询

时间:2016-12-21 12:14:05

标签: laravel-5.2

我在上网之前已经做了很多搜索,我没有找到任何可行的解决方案,所以我在这里写我的问题。我想检索用户并从模型(用户)计算同一城市中有多少用户。因此,要实现此任务,我必须编写相关的子查询(其中内部查询输出取决于外部查询)。

努力

$users = '';
$noOfOccurance = User::select(\DB::raw('count(*)'))->where('city', $users[0]->city)->get();

$users= User::select('name', 'region', 'country', 'city', 'latitude', 'longitude', \DB::raw('({$noOfOccurance->toSql()}) as no_of_occurance'))->where('id', '1')->mergeBindings($noOfOccurance->getQuery())->get();

但是,我没有那样做。我得到Uninitialized string offset: 0并且很明显得到$ user用户没有初始化并且不包含任何东西。

示例查询

SELECT first_name, last_name, email,(select count(u1.id) from users u1 where last_name = u.last_name) FROM users as u where id = 2

输出上述查询

output from query

更新

User::select('name', 'region', 'country', 'city', 'latitude', 'longitude', \DB::raw(User::select(\DB::raw('count(*)'))->where('city', $users[0]->city))->where('id', '1'))->get();

请帮帮我。

0 个答案:

没有答案