日期:2014-05-16  浏览次数:20826 次

mysql的一个计算问题,求数据库高手解答
大概是这样

数据表有2个字段,字段A和字段B。

根据外部提交的数据C,D,E

用MYSQL计算符合类型的记录

要求是 ((A-C)的平方+(B-D)的平方)的开方 >=E


我想知道能不能用MYSQL来算,假如不行,那就只能一条一条取值,然后用PHP来计算了

------解决方案--------------------
当然可以。
SQL code
SELECT * FROM tbl WHERE SQRT(POW(A - C, 2) + POW (B - D, 2)) >= E;

------解决方案--------------------
where (a-c)*(a-c)+(b-d)*(b-d)>=e*e

算距离,另外MYSQL本身也支持地理数据库。