$query = sprintf("SELECT user_id, lat, lng, ( 3959 * acos( cos( radians('%s') ) * cos( radians( lat ) ) * cos( radians( lng ) - radians('%s') ) + sin( radians('%s') ) * sin( radians( lat ) ) ) ) AS distance FROM bid_latlng HAVING distance < '%s' ORDER BY distance LIMIT 0 , 20",
mysql_real_escape_string($center_lat),
mysql_real_escape_string($center_lng),
mysql_real_escape_string($center_lat),
mysql_real_escape_string($radius));
我需要做的是使用上述语句中的user_login
从wp_users
表中获取user_id
列。
wp_users TABLE
id | user_login
我真的不太清楚如何在第一个陈述中正确地JOIN
使用结果的两个陈述......
答案 0 :(得分:0)
以下查询可以为您提供所需的结果:
sprintf("SELECT bid_latlng.user_id,wp_users.user_login, bid_latlng.lat, bid_latlng.lng,
( 3959 * acos( cos( radians('%s') ) * cos( radians( lat ) ) * cos( radians( lng ) - radians('%s') ) + sin( radians('%s') ) * sin( radians( lat ) ) ) ) AS distance
FROM bid_latlng JOIN wp_users ON bid_latlng.user_id = wp_users.user_id HAVING distance < '%s' ORDER BY distance LIMIT 0 , 20",
mysql_real_escape_string($center_lat),
mysql_real_escape_string($center_lng),
mysql_real_escape_string($center_lat),
mysql_real_escape_string($radius));