私はこのようなテーブルを持っています -
そのため、 には特別なデータ型 ( POINT
) がありuser_location
ます。
RAW 選択クエリは次のようになります。
SELECT
id,
full_name,
website,
X(user_location) AS "latitude",
Y(user_location) AS "longitude",
(
GLength(
LineStringFromWKB(
LineString(
user_location,
GeomFromText('POINT(51.5177 -0.0968)')
)
)
)
)
AS distance
FROM users
ORDER BY distance ASC;
そして結果は -
51.5177
-0.0968
( )この2点がユーザー入力から得られるように、クエリビルダーを使用してLaravelで使用したい。
私がしたことは-
DB::table('users')
->select(
id,
full_name,
website,
DB::raw('X(user_location) AS "latitude"'),
DB::raw('Y(user_location) AS "longitude"'),
DB::raw('(
GLength(
LineStringFromWKB(
LineString(
user_location,
GeomFromText('POINT(51.5177 -0.0968)')
)
)
)
)
AS distance')
)
->orderBy('distance', 'asc')
->get();
しかし、それは機能していません。
誰でも助けてもらえますか?