这是我的第一篇文章,所以我希望我遵守所有惯例:D
我有一个带有x和y坐标的MySql数据库和一个接收其他x和y坐标的php web服务。我想计算平方距离:(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程序中执行此操作时,对性能更为温和?
提前感谢所有答案!
答案 0 :(得分:3)
如果要按结果排序,请在SQL中进行计算。
否则,您只是将数据库用作"文件存储"而不是利用它提供的功能。此外,通过在数据库中进行排序,您可以限制返回的行数 - 另一个优化。