当前,我正在运行此SQL查询以检索商店定位器的自定义帖子。一切都很好,除非我希望它返回项目,即使“电话”字段为空。截至目前只会拉那些该领域填补了那些即使字段为空,您如何运行SQL查询返回
这是运行时我的查询的样子:
任何有线索? (也就是有一个更有效的方式来运行这个?)
SELECT wp_posts.post_title as name,
address.meta_value as address,
latitude.meta_value as lat,
longitude.meta_value as lng,
telephone.meta_value as phone,
(3959 * acos(
cos(radians('%s')) *
cos(radians(CONVERT(latitude.meta_value, DECIMAL(10, 6)))) *
cos(radians(CONVERT(longitude.meta_value, DECIMAL(10, 6))) - radians('%s')) +
sin(radians('%s')) * sin(radians(CONVERT(latitude.meta_value, DECIMAL(10, 6))))
)) AS distance
FROM wp_postmeta as address, wp_postmeta as latitude, wp_postmeta as longitude, wp_postmeta as telephone,
wp_posts
WHERE
(wp_posts.ID = address.post_id
AND address.meta_key = '_dealer_address')
AND (wp_posts.ID = latitude.post_id
AND latitude.meta_key = '_dealer_latitude')
AND (wp_posts.ID = longitude.post_id
AND longitude.meta_key = '_dealer_longitude')
AND (wp_posts.ID = telephone.post_id
AND telephone.meta_key = '_dealer_telephone')
或重写使用电话的东西,而不是一个内部联接左连接。 – 2011-05-12 19:15:37
Marc B--我已经成功地使用了你的方法,如果你把这个作为n答案重新发布,我会设置为接受的答案。谢谢! – Joe 2011-05-12 21:17:37