Как проверить точку, если она находится внутри многоугольника в таблице MySQL?

0

Я использую веб-приложение, где мне нужно проверить, находится ли данная точка в полигоне в таблице MySQL?

Я использую ASP.net с MySQL. Я пытаюсь использовать следующий оператор SQL

SELECT REGION_USER_ID FROM region WHERE (ST_Within(point(-23, 1), geom));

с моей таблицей и получить следующую ошибку. (FUNCTION ST_Within НЕ существует)

Изображение 174551

В чем проблема? Кроме того, является ли geom ключевым словом? (Я получил это с сайта, но не могу вспомнить, где)

Мои координаты полигона находятся в таблице, написанной со следующим утверждением: (Он работает, и я могу читать и видеть)

INSERT INTO region (REGION_POLYGON) VALUES (PolygonFromText(@Parameter1))

Любая помощь приветствуется.

  • 0
    Какая версия вашего MySQL?
  • 0
    Mysql версия 8. VS 2017.
Показать ещё 1 комментарий
Теги:
polygon

1 ответ

0
Лучший ответ

Вот он, если кто-то ищет решение:

string Query = @"SELECT " +
                                    "A," +
                                    "B,"+
                                    "C,"+
                                    "D,"+
                                    "E,"+
                                    "F"+
                                "FROM user " +
                                "INNER JOIN State ON " +
                                    "A=B AND C=@Parameter1 " +
                                "INNER JOIN Country ON " +
                                    "CONTAINS(REGION_POLYGON, point(@Parameter2, @Parameter3)=1)";

Параметр2: Логарифм Параметр3: Широта

Благодарю.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню