大概是这样数据表有2个字段,字段A和字段B。根据外部提交的数据C,D,E用MYSQL计算符合类型的记录要求是   ((A-C)的平方+(B-D)的平方)的开方 >=E
我想知道能不能用MYSQL来算,假如不行,那就只能一条一条取值,然后用PHP来计算了

解决方案 »

  1.   

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

  2.   

    where (a-c)*(a-c)+(b-d)*(b-d)>=e*e算距离,另外MYSQL本身也支持地理数据库。
      

  3.   

    嗯,你的和上面的也是一样的,但是地理数据库没有接触过,是否能简单介绍下呢,我对MYSQL了解不深,基本都只处于查询那种初级阶段
    还有,上面的用的是mysql的内置函数吧,和你的直接计算,效率上是否有差别。
    望不吝赐教!
      

  4.   

    懂了,谢谢诸位,地理数据库简单的google了一下,那个功能暂时用不上。结贴了。