使用Postgres和扩展cube
和earthdistance
我这样查询邮政编码78705,半径范围为50英里:
WITH query1 AS(SELECT * FROM listings
WHERE earth_box(ll_to_earth(30.2961708, -97.73895429999999), 80467.2)
@> ll_to_earth(listings.lat, listings.lng)
我得到了结果foo列表,这很棒。
如果我查询半径为50英里的邮政编码78232:
WITH query1 AS(SELECT * FROM listings
WHERE earth_box(ll_to_earth(29.59442259999999, -98.4568128), 80467.2)
@> ll_to_earth(listings.lat, listings.lng)
我收回了预期的结果,包括列表foo。
我的问题是....如果foo(这是邮政编码78705)返回50英里半径78232与其他列表78232,为什么不是所有的邮政编码78232被列入5070英里半径78705 ?