I have a view that I use for searching users, and one of the exposed filters is Location:Proximity. When I attempt to use this, I get the following error:
<?code
user warning: Column 'latitude' in field list is ambiguous query: SELECT DISTINCT(node.nid), (((IFNULL(ACOS(0.731738246395*COS(RADIANS(latitude))*(0.318160563877*COS(RADIANS(longitude)) + -0.948036842951*SIN(RADIANS(longitude))) + 0.681585753052*SIN(RADIANS(latitude))), 0.00000)*6368175.74664)) / 1609.347) AS distance, usernode_users.name AS usernode_users_name, usernode_users.uid AS usernode_users_uid, user_location.city AS user_location_city, user_location.country AS user_location_country, usernode_users.created AS usernode_users_created FROM node node LEFT JOIN location location ON node.vid = location.eid INNER JOIN usernode usernode ON node.nid = usernode.nid LEFT JOIN users usernode_users ON usernode.uid = usernode_users.uid LEFT JOIN location user_location ON usernode.uid = user_location.eid WHERE (node.type IN ('uprofile')) AND (node.status = '1') AND (location.longitude IS NOT NULL) AND (location.latitude > 42.6056933981 AND location.latitude < 43.3296746019 AND location.longitude > -71.9429824338 AND location.longitude < -70.9535775662) ORDER BY distance ASC LIMIT 0, 10 in /includes/database.mysqli.inc on line 151.
?>
Any ideas?
Comments
Comment #1
mennonot commentedI've got a very similar scenario generation a similar error. I've got an exposed Location:Proximity filter for a list of nodes displaying lattitude and longitude and I get this error:
user warning: Column 'latitude' in field list is ambiguous query: SELECT node.nid, (((IFNULL(ACOS(0.74303117096305*COS(RADIANS(latitude))*(0.040665776061976*COS(RADIANS(longitude)) + -0.99917280520302*SIN(RADIANS(longitude))) + 0.66925681093081*SIN(RADIANS(latitude))), 0.00000)*6368532.0516327)) / 1609.347) AS distance, location.latitude AS location_latitude, location.longitude AS location_longitude, node.title AS node_title, node.changed AS node_changed, node.type AS gmap_node_type FROM node node INNER JOIN usernode usernode ON node.nid = usernode.nid LEFT JOIN location user_location ON usernode.uid = user_location.eid LEFT JOIN location location ON node.vid = location.eid WHERE (node.type IN ('dealer')) AND (user_location.longitude IS NOT NULL) AND (user_location.latitude > 41.937336930123 AND user_location.latitude < 42.082125069877 AND user_location.longitude > -87.766810751674 AND user_location.longitude < -87.571949248326) ORDER BY distance ASC in .../includes/database.mysql.inc on line 172.Comment #2
mennonot commentedThe location views issue queue seems to be abandoned, so I'm moving this issue over the location (API, module) issue queue since the location module to be the mother ship for the location views module.
Comment #3
yesct commentedThis issue is about a year old and regarding an old version, and there have been lots of improvements. Try the latest version.
Also, I'll mark this one as a duplicate of #321114: Fixing exposed filters in Views for UK and US postal code proximity search (not cck location) as most of the work on proximity views seems to be there.
Comment #4
tom78 commentedI have a similar problem. In both, the newest dev and the rc1.
user warning: Column 'latitude' in field list is ambiguous query: SELECT DISTINCT(node.nid), (((IFNULL(ACOS(0.634767789827*COS(RADIANS(latitude))*(0.982601038062*COS(RADIANS(longitude)) + 0.185728834591*SIN(RADIANS(longitude))) + 0.772702952627*SIN(RADIANS(latitude))), 0.00000)*6365342.94582)) / 1000) AS distance, usernode_users.login AS usernode_users_login, user_location.city AS user_location_city, location.postal_code AS location_postal_code, usernode_users.name AS usernode_users_name, usernode_users.uid AS usernode_users_uid, usernode_users.uid AS usernode_users_picture FROM node node INNER JOIN usernode usernode ON node.nid = usernode.nid LEFT JOIN location_instance location_instance_user ON usernode.uid = location_instance_user.uid LEFT JOIN location user_location ON location_instance_user.lid = user_location.lid LEFT JOIN users usernode_users ON usernode.uid = usernode_users.uid LEFT JOIN location_instance location_instance_node ON node.vid = location_instance_node.vid LEFT JOIN location location ON location_instance_node.lid = location.lid WHERE (user_location.longitude IS NOT NULL) AND (user_location.latitude > 50.3722057856 AND user_location.latitude < 50.8222662144 AND user_location.longitude > 10.3491187207 AND user_location.longitude < 11.0581372793) AND (node.status = '1') AND (user_location.latitude IS NOT NULL) AND (node.type IN ('usernode')) ORDER BY distance ASC, usernode_users_login DESC LIMIT 0, 10 in .../includes/database.mysql.inc on line 174.Update: This was my failure in the view. :(
tom