X
ポイントとのテーブルがありY
ます。origin に最も近いX
とポイントを見つける必要があります。Y
(0, 0)
私はこのようにしようとしています:
SELECT *
FROM `line`
WHERE xi < yi and 0 < xi and 0 < yi and yi < xi
ORDER BY yi and xi ASC
Limit 100
しかし、私は望ましい値を得ていません。
原点までの距離は で与えられsqrt(xi^2 +yi^2)
ます。平方根は厳密に昇順であるため、順序付けのために省略できます。それは与える:
SELECT *
FROM `line`
ORDER BY xi*xi + yi*yi
Limit 100
d = sqrt(x²+y²)
原点から最も近い点を取得するには、距離を計算する必要があります
select x, y, sqrt(x*x + y*y) as distance
from `line`
order by distance asc
limit 1
SELECT xi, yi, xi * xi + yi * yi As r2
FROM line
ORDER BY r2