Поиск таблицы для точки в полигоне с использованием MySQL

Я создал таблицу (unicipal_border) в MySQL 5.5, которая содержит некоторые границы.

CREATE TABLE `municipal_border` (
  `boundary` polygon NOT NULL,
  `municipalID` int(10) NOT NULL,
) ENGINE=InnoDB

ПолеunicipalID не уникально.

используя код ниже, чтобы проверить, принадлежит ли точка к многоугольнику.

set @r = (SELECT municipal_border.boundary FROM municipal_border WHERE municipalID=9001);
set @p = GeomFromText('POINT(24.1621 41.0548)');
select if(contains(@r, @p), 'yes', 'no');

Первая инструкция set @r = ... возвращает только одну строку, и я выбрал ее специально для тестирования. Работает просто отлично.

Я хочу выполнить поиск по всей таблице (другими словами, стереть часть WHERE из вопроса SQL) и найти, в каком многоугольнике находится точка.

Ответы на вопрос(2)

Ваш ответ на вопрос