Интересно, где разница между этими двумя пространственными объединениями и, если есть разница, когда использовать какой.
SELECT *
FROM points p, shapes s
WHERE ST_Within(p.geom, s.geom);
а также
SELECT *
FROM points p
INNER JOIN shapes s ON ST_Within(p.geom, s.geom)
Один быстрее в определенных ситуациях?
postgis
postgresql
spatial-database
Stophface
источник
источник
JOIN
исключительно. К сожалению, как написано, это скорее вопрос чистого SQL, и приманка мнения при этом.Ответы:
Нет одного различия для обоих утверждений. Postgresql преобразует их в один и тот же план запроса. Вы можете увидеть планы, просто добавив
EXPLAIN ANALYZE
перед вашим выбором и ищет результат.источник
EXPLAIN ANALYZE
перед вашим выбором и ищет результат.