Setelah tidur malam saya menemukan solusi berikut.
set @p = GeomFromText('POINT(23.923739342824817 38.224714465253733)');
select municipalID FROM ecovis.municipal_border
where ST_Contains(municipal_border.boundary, @p);
Ini berfungsi untuk MySQL 5.6.1 di mana awalan ST_ fungsi telah diimplementasikan. Meskipun saya tidak memiliki pengukuran dari pendekatan klasik (algoritma x-ray) saya yakin itu cukup cepat. Diperlukan 0,17 detik untuk menemukan titik dalam 2.700 poligon dengan beberapa poligon memiliki lebih dari 1.500 titik.