Добрый день.
Есть таблица
`table` (
`id` int(9) NOT NULL AUTO_INCREMENT,
`latitude` decimal(18,15) DEFAULT NULL,
`longitude` decimal(18,15) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `idx_geo` (`latitude`,`longitude`)
) ENGINE=MyISAM AUTO_INCREMENT=100000 DEFAULT CHARSET=utf8;
И есть запрос
SELECT
`id`
FROM
`table`
WHERE
ST_Distance_Sphere(POINT(`longitude`, `latitude`), POINT(30.36082, 59.93107)) <= 7000 OR ....и тут еще подобных ST_Distance_Sphere штук сто....
Отрабатывает этот запрос долго, ~секунд 20, и explain показывает, что индекс не используется(key и possible keys пустые).
Возможно ли и если да то как использование индекса в таком запросе?
Заранее спасибо за ответы.