Использование ST_INTERSECT в Fusion Table Google Maps приводит к неверному запросу

Я пытаюсь увидеть, содержится ли позиция широты/долготы в определенных границах на карте Google.

Я показываю свои границы с помощью таблицы слияния.

Прямой выбор из таблицы слияния приводит к тому, что мои данные полигона возвращаются:

https://www.googleapis.com/fusiontables/v1/query?sql=SELECT geometry FROM 1NosbtruuU4DH_tC2rtvTkFiMZfPNgL-HWUNx_Kk&key=mykey

При добавлении предложения WHERE с ST_INTERSECT в мой запрос я получаю сообщение об ошибке:

https://www.googleapis.com/fusiontables/v1/query?sql=SELECT geometry FROM 1NosbtruuU4DH_tC2rtvTkFiMZfPNgL-HWUNx_Kk&key=mykey WHERE ST_INTERSECTS(geometry,CIRCLE(LATLNG(-33.8977067,151.1944247),10))

Ошибка:

{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "reason": "keyInvalid",
    "message": "Bad Request"
   }
  ],
  "code": 400,
  "message": "Bad Request"
 }
}

Может ли кто-нибудь увидеть, что я делаю неправильно?


person Ciaran O'Neill    schedule 19.10.2012    source источник


Ответы (1)


Ваши географические данные находятся в столбце с именем геометрия, а не широта:

Измените широту в ST_INTERSECTS на геометрию: https://www.googleapis.com/fusiontables/v1/query?sql=SELECT геометрия FROM 1NosbtruuU4DH_tC2rtvTkFiMZfPNgL-HWUNx_Kk&key=mykey WHERE ST_INTERSECTS(геометрия,CIRCLE(LATLNG(-33.8977067,151.1944247),10))

Пример карты

Вероятно, вам следует прочитать ответ Уоррена Шена на ваш вопрос в Google Maps API v3 также.

person geocodezip    schedule 19.10.2012
comment
Извините, это была плохая копия/вставка, пока я пробовал другие решения. Использование геометрии приводит к плохому запросу, как указано в моем вопросе. - person Ciaran O'Neill; 22.10.2012
comment
Однако у меня это работает (в примере в моем ответе). Вам нужно указать WHERE в правильном месте (как заметил Уоррен Шен здесь в ответ на тот же вопрос в группе Google Maps API v3) - person geocodezip; 22.10.2012
comment
Большое спасибо, теперь работает как шарм. Я просматривал пример, представленный на developers.google.com/fusiontables/docs/ v1/using#auth и не учел, что ключ был ошибочно принят за часть запроса. - person Ciaran O'Neill; 22.10.2012