Como vincular parâmetros a uma consulta de banco de dados bruta no Laravel usada em um modelo?

Ré,

Eu tenho a seguinte consulta:

$property = 
    Property::select(
        DB::raw("title, lat, lng, ( 
            3959 * acos( 
                cos( radians(:lat) ) * 
                cos( radians( lat ) ) * 
                cos( radians( lng ) - radians(:lng) ) + 
                sin( radians(:lat) ) * 
                sin( radians( lat ) ) 
            ) 
        ) AS distance", ["lat" => $lat, "lng" => $lng, "lat" => $lat])
    )
    ->having("distance", "<", $radius)
    ->orderBy("distance")
    ->take(20)
    ->get();

Não funciona:Invalid parameter number: mixed named and positional parameters.

Alguém sabe um truque ou uma solução alternativa (obviamente posso escrever a consulta completa, mas prefiro usar o construtor fluente).

questionAnswers(6)

yourAnswerToTheQuestion