Laravel 5 使用having和paginate方法时出现查询生成器错误
我在Laravel 5.4中的查询生成器中使用了have和paginate。但是它显示错误。如果我删除了paginate方法,它工作正常。下面是我的代码Laravel 5 使用having和paginate方法时出现查询生成器错误,laravel-5,Laravel 5,我在Laravel 5.4中的查询生成器中使用了have和paginate。但是它显示错误。如果我删除了paginate方法,它工作正常。下面是我的代码 DB::table('nearbies') ->select(DB::raw('( 6371 * acos ( cos ( radians(9.955308) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians(76.302331) )+ sin
DB::table('nearbies')
->select(DB::raw('( 6371 * acos ( cos ( radians(9.955308) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians(76.302331) )+ sin ( radians(9.955308) ) * sin( radians( latitude ) ))) AS distance,id,name,location'))
->havingRaw('( 6371 * acos ( cos ( radians(9.955308) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians(76.302331) )+ sin ( radians(9.955308) ) * sin( radians( latitude ) ))) < 10')
->orderBy('distance','asc')
->paginate(3);
havingRaw无权访问生成的字段。因此,您需要使用whereRaw而不是havingRaw,如本答案所述:
有什么错误?SQLSTATE[42S22]:未找到列:1054“having子句”中的未知列“latitude”尝试使用whereRaw而不是havingRaw