virtual_odin Posted October 20, 2006 Share Posted October 20, 2006 I have a table including the x and y coordinates of a series of points on a grid and want to be able to select them in order of their distance from a given pair of x y coordinates (ie sqrt((x[sub]1[/sub]-x[sub]2[/sub])*(x[sub]1[/sub]-x[sub]2[/sub])+(y[sub]1[/sub]-y[sub]2[/sub])*(y[sub]1[/sub]-y[sub]2[/sub])). I can select OK and show the distance with the formula above with the query below[quote]SELECT * FROM `points` ORDER BY '".strtolower($sortby)."' ".$direction[/quote]But sorting the results into the lowest and highest distances from the given point is proving beyond me for the moment!It looks from the manual as if it should be possible. Your help would be appreciated. Quote Link to comment https://forums.phpfreaks.com/topic/24528-is-this-possible/ Share on other sites More sharing options...
shoz Posted October 20, 2006 Share Posted October 20, 2006 [quote author=virtual_odin link=topic=112104.msg454854#msg454854 date=1161338738]I have a table including the x and y coordinates of a series of points on a grid and want to be able to select them in order of their distance from a given pair of x y coordinates (ie sqrt((x[sub]1[/sub]-x[sub]2[/sub])*(x[sub]1[/sub]-x[sub]2[/sub])+(y[sub]1[/sub]-y[sub]2[/sub])*(y[sub]1[/sub]-y[sub]2[/sub])). I can select OK and show the distance with the formula above with the query below[quote]SELECT * FROM `points` ORDER BY '".strtolower($sortby)."' ".$direction[/quote]But sorting the results into the lowest and highest distances from the given point is proving beyond me for the moment!It looks from the manual as if it should be possible. Your help would be appreciated.[/quote][code]SELECT p.*, SQRT((points.x - $x)*(points.x - $x) ...) AS distance FROM points ORDER BY distance[/code]EDIT: Note that there is a MYSQL function POW that can be used to square a value. eg: POW((x1-x2), 2).http://dev.mysql.com/doc/refman/4.1/en/mathematical-functions.html Quote Link to comment https://forums.phpfreaks.com/topic/24528-is-this-possible/#findComment-111779 Share on other sites More sharing options...
virtual_odin Posted October 20, 2006 Author Share Posted October 20, 2006 Brill, thanks shoz. Quote Link to comment https://forums.phpfreaks.com/topic/24528-is-this-possible/#findComment-111784 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.