그래서 특정 거리 내의 다른 특정 점에 가장 가까운 점을 찾으려고합니다. 그리고 이것을 위해 haversine 공식을 사용하고 있습니다. 원시 쿼리 자체는 다음과 같습니다 input_lat
및 input_long
내가 내 센터 검색 지점에서 시작하려는 내 사전 정의 된 좌표입니다Laravel 4 :이 복잡한 원시 지리적 SQL 쿼리를 Eloquent를 사용하여 어떻게 변환합니까?
SELECT id,
(3959 * acos(cos(radians(input_lat)) * cos(radians(map_loc_lat)) * cos(radians(map_loc_long) - radians(input_long)) + sin(radians(input_lat)) * sin(radians(map_loc_lat))))
AS distance FROM posts HAVING distance < 25 ORDER BY distance LIMIT 0 , 20;
및 map_loc_lat
및 map_loc_long
가 posts
'포인트입니다. 내 입력 위도를 표시하기 위해
$query->selectRaw('id, (6371 * acos(cos(radians(?)) * cos(radians(map_loc_lat))
* cos(radians(?) - radians(?)) + sin(radians(?))
* sin(radians(map_loc_lat)))) AS distance',)
그러나 나는 물음표를 지정하는 방법에 대한 혼란 스러워요 : 나는, 무거운의 부분을 너무 좋아하는 웅변의 selectRaw()
방법을 사용하기 위해 노력하고있어
그리고 Eloquent를 사용하는 경도, 그리고 어떻게하면 절과 내 한계에 따라 내 주문을 계속 묶을 수 있을까요?
오류 메시지 : 대신 여기
DB::raw()
및select()
를 사용하는 다른 해결책을 찾지 못했습니다하는 예입니다 멀리? 주문에 대해서는 다음을 사용할 수 있습니다 : $ query-> orderBy ('id', 'DESC'); ' – mrquad
내 쿼리의'selectRaw()'부분을 제대로 실행할 수 없습니다. "잘못된 매개 변수 번호"오류가 발생합니다. – ReactingToAngularVues