有人可以帮忙编写下面的代码吗?由于列“距离”不存在,即使我将其定义为...,我也收到错误...
public static function getByDistance($lat, $lng, $distance)
{
$result = Auction::join('users', 'auctions.user_id', '=', 'users.id')
->select(DB::raw('users.id', '( 3959 * acos( cos( radians(' . $lat . ') ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(' . $lng . ') ) + sin( radians(' . $lat .') ) * sin( radians(lat) ) ) ) as distance'))
->where ('distance', '<', $distance)
->get();
return $result;
}
最佳答案
HAVING 可用于比较别名的值。
having('distance', '<', $distance);
关于php - Laravel/MySQL 在 where 子句中使用计算别名列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51874964/