在 SQL 查询或 PHP 中进行计算?

Do a calculation in SQL query or PHP?

这是我的第一个 post,所以我希望我遵守所有约定 :D

我有一个带有 x 和 y 坐标的 MySql 数据库和一个接收其他 x 和 y 坐标的 php 网络服务。我想计算平方距离:(x2-x1)^2 + (y2-y1)^2 并从最近到最远排序

SQL 查询(在 php 中)将是:

SELECT ((x_coor-$x)*(x_coor-$x)+(y_coor-$y)*(y_coor-$y)) AS SquareDis FROM $table ORDER BY SquareDis

在 SQL 查询或 php 程序中执行此操作对性能更温和?

提前感谢您的所有回答!

如果要按结果排序,则在SQL中进行计算。

否则,您只是将数据库用作 "file store" 而没有利用它提供的功能。此外,通过在数据库中进行排序,您可以限制返回的行数——另一个优化。