0

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

しかし、私は望ましい値を得ていません。

4

3 に答える 3

6

原点までの距離は で与えられsqrt(xi^2 +yi^2)ます。平方根は厳密に昇順であるため、順序付けのために省略できます。それは与える:

SELECT *
FROM `line` 
ORDER BY xi*xi + yi*yi
Limit 100
于 2013-06-02T17:05:20.757 に答える
1

d = sqrt(x²+y²)原点から最も近い点を取得するには、距離を計算する必要があります

select x, y, sqrt(x*x + y*y) as distance
from `line` 
order by distance asc
limit 1
于 2013-06-02T17:05:14.023 に答える
1
SELECT xi, yi, xi * xi + yi * yi As r2
FROM line
ORDER BY r2
于 2013-06-02T17:06:23.733 に答える