Я использовал учебник из http://dev.mysql.com/tech-resources/articles/4.1/gis-with-mysql.html, поэтому я создал две таблицы, вставил некоторые данные, и когда я попытался получить некоторые данные с помощью такого сценария
SELECT
c.cab_driver,
ROUND(GLength(LineStringFromWKB(LineString(AsBinary(c.cab_loc),
AsBinary(a.address_loc)))))
AS distance
FROM cab c, address a
WHERE a.address = 'Foobar street 110'
ORDER BY distance ASC LIMIT 1;
я получил ошибку: «Код ошибки: 1367 Недопустимое не геометрическое значение "aswkb (c
. cab_loc
)" при синтаксическом анализе "
Есть предложения?
У меня есть некоторые успехи в этом вопросе, я пыталсязапустить
SELECT
asbinary(c.cab_loc)
FROM usercoordinates.cab c;
и я получаю NULL в каждой строке, но если я использую astext, я получаю POINT (...) в каждой строке
Наконец-то я понял, возможно, не лучшее решениено все же
SELECT
c.cab_driver,
Round(glength(LineStringFromWKB(LineString(GeomFromText(astext(c.cab_loc)),GeomFromText(astext(a.address_loc)))))) AS distance
FROM cab c, address a
WHERE a.address = 'Foobar street 99'
ORDER BY distance ASC LIMIT 1;